我正在尝试创建一个自定义UIBarbuttonItem,它只使用一个透明度的png,这样我只有一个图标作为按钮.当我尝试设置按钮图像时,将背景设置为白色,并将样式设置为“平原”,我仍然会在其周围获得内部阴影和黑色边框.
是什么赋予了?
我尝试了下面的代码,它仍然围绕它的黑色边框.
UIImage *background = [UIImage imageNamed:@"dismiss_normal.png"]; UIImage *backgroundSelected = [UIImage imageNamed:@"dismiss_selected.png"]; self.closeButton = [UIButton buttonWithType:UIButtonTypeCustom]; [self.closeButton addTarget:self action:@selector(closeButtonpressed:) forControlEvents:UIControlEventTouchUpInside]; //adding action [self.closeButton setBackgroundImage:background forState:UIControlStatenormal]; [self.closeButton setBackgroundImage:backgroundSelected forState:UIControlStateSelected]; self.closeButton.frame = CGRectMake(0,background.size.width,background.size.height); self.closeButtonItem = [[UIBarButtonItem alloc] initWithCustomView:self.closeButton]; self.navigationItem.leftBarButtonItem = self.closeButtonItem;
解决方法
我理解你的问题.
实际推送UIViewController时,它将成为现有UINavigationController的一部分.因此UINavigationBar保留.但是当你使用ModalViewController时,它只是另一种“添加”到现有UIViewController的UIViewController.所以UINavigationBar不会存在.
但是你可以从xib添加另一个UINavigationBar并添加一个UIButton.但是不要直接添加UIButton,如果这样做,它会自动转换为UIBarButton,使其边界化.
所以首先将普通的UIButton拖到你的UIView(不是导航栏).将其更改为自定义并使用Attribute Inspector将UIImage添加到其中.然后将该图像拖到自定义创建的UINavigationBar中.它会像我刚才尝试的那样工作.您可以看到下面附带的屏幕截图.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。