gpt4 book ai didi

ios - 在 ios6 的导航栏上放置自定义按钮不起作用

转载 作者:行者123 更新时间:2023-11-29 04:06:18 24 4
gpt4 key购买 nike

我对此进行了大量研究,并使用了几种不同的方法。此代码位于我的 ViewController.m 中:

1)第一种方法

UIImage *settingsimage = [UIImage imageNamed:@"gearicon"];
UIBarButtonItem *settingsBarButton =[[UIBarButtonItem alloc] initWithImage:settingsimage style:(UIBarButtonItemStylePlain) target:self action:@selector(switchpages)];

self.navigationItem.leftBarButtonItem = settingsBarButton;

此代码执行时没有任何错误,但没有出现按钮!

2)第二种方法

UIButton *settingbtn = [UIButton buttonWithType:UIButtonTypeCustom];
[settingbtn addTarget:self action:@selector(switchpages) forControlEvents:UIControlEventTouchUpInside];
[settingbtn setImage:[UIImage imageNamed:@"gearicon.png"] forState:UIControlStateNormal];
UIBarButtonItem *newBarItem = [[UIBarButtonItem alloc] initWithCustomView:settingbtn];

self.navigationItem.leftBarButtonItem = newBarItem;

与上面相同,没有错误,但没有按钮。请帮助我哪里出错了。谢谢。

最佳答案

所以,这是我的最终解决方案。这会在没有边框的导航栏的右上角放置一个“齿轮”图标:

.h

 @property (strong, nonatomic) IBOutlet UINavigationBar *navBar;
@property (strong, nonatomic) IBOutlet UINavigationItem *settingsbtn;
@property(strong, nonatomic)UIButton *navigationButton;

.m

 @synthesize navigationButton;
@synthesize settingsbtn;
@synthesize navBar;

ViewDidLoad

//custom settings button
navigationButton = [UIButton buttonWithType:UIButtonTypeCustom];
[navigationButton addTarget:self action:@selector(swithpages) forControlEvents:UIControlEventTouchUpInside];
[navigationButton setImage:[UIImage imageNamed:@"gearicon.png"]forState:UIControlStateNormal];
[navigationButton setFrame:CGRectMake(0, 0, 30, 35)];
UIBarButtonItem *settingsbutton = [[UIBarButtonItem alloc] initWithCustomView:navigationButton];

settingsbtn.rightBarButtonItem = settingsbutton;

我唯一缺少的是让按钮在按下时“发光”(就像苹果的远程应用程序一样),而不是默认情况下改变颜色。

关于ios - 在 ios6 的导航栏上放置自定义按钮不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15145279/

24 4 0