【问题标题】:How to change the color of barButtonItem?如何更改 barButtonItem 的颜色?
【发布时间】:2011-09-14 21:26:19
【问题描述】:

在作为 rightBarButtonItem 的导航栏上,我通过以下编码获取编辑按钮

self.navigationItem.rightBarButtonItem=self.editButtonItem;

但是我想改变编辑按钮的颜色我的意思是我想改变rightBarButtonItem的颜色。我该怎么做?

请尽早回复。

提前感谢。

【问题讨论】:

标签: iphone objective-c xcode uinavigationbar


【解决方案1】:

您需要创建一个自定义按钮并使用 initWithCustomView 初始化您的 UIBarButtonItem。

如果使用自定义图像,请根据需要创建 UIButton,然后:

UIBarButtonItem *barButtonItem = [[UIBarButtonItem alloc] initWithCustomView:yourUIButton];

【讨论】:

    【解决方案2】:

    您在制作标准 UIBarButtonItem 时受到限制。但是您可以使用您选择的任何 UIView 来初始化它,例如标准 UIButton,您可以随意着色。

    UIButton *myButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    myButton.frame = CGRectMake(0, 0, 30, 20); // change as you like being constrained with navigation bar hieght
    [myButton setTitle:@"My Button" forState:UIControlStateNormal];
    [myButton setTitleColor:[UIColor redColor] forState:UIControlStateNormal];
    [myButton setImage:[UIImage imageNamed:@"Image for my button.png"] forState:UIControlStateNormal]; // <-- you can provide image instaed of title if you like
    [myButton setBackgroundImage:[UIImage imageNamed:@"Background image for my button.png"] forState:UIControlStateNormal];
    [myButton addTarget:self action:@selector(myAction) forControlEvents:UIControlEventTouchUpInside]; // <-- don't forget configure this!!! 
    self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:myButton];
    

    【讨论】:

      【解决方案3】:

      访问此链接。答案是一样的。

      specially indicating or highlighting a toolbar button when a note is added in iphone

      使用[[UIBarButtonItem alloc] initWithCustomView:btnInfo];方法会有帮助。

      【讨论】:

        猜你喜欢
        • 2012-09-01
        • 2017-08-20
        • 1970-01-01
        • 1970-01-01
        • 2023-03-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多