IOS中导航栏项的调整
我有导航键。我已经为它使用了图像,但我面临一个问题,如果我点击按钮,它会改变它的位置,并从导航栏向下移动到视图控制器的视图中。我的密码是IOS中导航栏项的调整,ios,Ios,我有导航键。我已经为它使用了图像,但我面临一个问题,如果我点击按钮,它会改变它的位置,并从导航栏向下移动到视图控制器的视图中。我的密码是 UIBarButtonItem *rightButton = [[UIBarButtonItem alloc] initWithTitle:@"" style:UIBarButtonItemStyleDone
UIBarButtonItem *rightButton = [[UIBarButtonItem alloc]
initWithTitle:@""
style:UIBarButtonItemStyleDone
target:self
action:@selector(rightBtnClicked:)];
[rightButton setImage:[UIImage imageNamed:@"right.png"]];
rightButton.tintColor=[UIColor whiteColor];
self.navigationItem.rightBarButtonItem = rightButton;
请尝试以下代码:
UIBarButtonItem *barButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@“right.png”] style:UIBarButtonItemStylePlain target:self action:@selector(rightButtonClicked:)];
self.navigationController.navigationItem.rightBarButtonItem = barButton;
我刚检查过这是否有效
UIButton *someButton = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 20, 20)];
[someButton setImage:[UIImage imageNamed:@"IMG_1148.jpg"] forState:UIControlStateNormal];
[someButton addTarget:self action:@selector(requestButton)
forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *barButton =[[UIBarButtonItem alloc] initWithCustomView:someButton];
self.navigationItem.rightBarButtonItem=barButton;
或者你可以这样做
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
button.frame = CGRectMake(0, 0, 20, 20);
UIImage *image = [[UIImage imageNamed:@"back.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate];
[button setImage:image forState:UIControlStateNormal];
button.tintColor = [UIColor redColor];
[button addTarget:self action:@selector(requestButton)
forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *mailbutton =[[UIBarButtonItem alloc] initWithCustomView:button];
self.navigationItem.rightBarButtonItem=mailbutton;
像这样试试,我希望它能帮助你 //OBJC
UIImage *img_table =[UIImage imageNamed:@"right.png"];
UIButton *button = [UIButton buttonWithType: UIButtonTypeCustom];
button.frame = CGRectMake(0, 0, img_table.size.width, img_table.size.height);
[button setImage:img_table forState: UIControlStateNormal];
[button setImage:img_table forState: UIControlStateSelected];
[button addTarget: self action:@selector(rightBtnClicked:) forControlEvents: UIControlEventTouchUpInside];
UIBarButtonItem *barButton = [[UIBarButtonItem alloc] initWithCustomView:button];
barButton.tintColor=[UIColor whiteColor];
self.navigationItem.rightBarButtonItem = barButton;
//Swift
let img_table = UIImage(named: "right.png")
let button = UIButton.init(type: UIButtonType.custom)
button.frame = CGRect.init(x: 0, y: 0, width: (img_table?.size.width)!, height: (img_table?.size.height)!)
button.setImage(img_table, for: UIControlState.normal)
button.setImage(img_table, for: UIControlState.selected)
button.addTarget(self, action: @selector(rightBtnClicked:)), for: UIControlEvents.touchUpInside)
let barButton = UIBarButtonItem.init(customView: button)
barButton.tintColor=[UIColor whiteColor];
self.navigationItem.rightBarButtonItem = barButton
问题在于,您需要为图像提供一个框架。因此,请点击一个UIButton并设置图像和操作。然后将UIButton添加到UIBarButtonim 以下是适用于您的工作代码:
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
[button setImage:[UIImage imageNamed:@"right.png"] forState:UIControlStateNormal];
[button addTarget:self action:@selector(rightButtonClicked:)forControlEvents:UIControlEventTouchUpInside];
[button setFrame:CGRectMake(0, 0, 53, 31)];
UIBarButtonItem *barButton = [[UIBarButtonItem alloc] initWithCustomView:button];
self.navigationItem.rightBarButtonItem = barButton;
你试过了吗?你提供的链接在导航栏中没有显示按钮@parvbhasker在
右侧b单击时发生了什么
?它没有在我遵循代码时显示图像@布里耶什Shiroya@umer-你有时间检查这个吗,因为我刚刚检查了它在xcode 8.3.3中的工作情况。我想要白色的@Parv BhaskerThanks需要很多信息:)@尼马尔辛