嗨,我试着为这个UIBarButton设置一个定制的样式,但是我不能让它工作,这是怎么做的?
UIBarButtonItem *theatersNav = [[UIBarButtonItem alloc] initWithTitle:@"THEATERS"
style:(UIBarButtonItemStyleDone) target:self action:@selector(theatersNavAction:)];我得到了一张背景图片,但我无法更改文本的字体、颜色和6
UIImage *userImage = [UIImage imageNamed:@"heart-normal"];
UIImage *userImageHighlighted = [UIImage imageNamed:@"heart-highlighted.png"];
[[UIBarButtonItem appearance] setBackgroundImage:userImage forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
[[UIBarButtonItem appearance] setBackgroundImage:userImageHighlighted forState:UIControlStateHighlighted barMetrics:UIBarMetricsDefault];发布于 2014-11-16 18:40:18
使用[UIBarButtonItem appearance]时,该设置将应用于所创建的所有新UIBarButtonItem实例。它对任何现有的UIBarButtonItem实例都没有影响。
如果只想将该设置应用于单个按钮,请不要使用[UIBarButtonItem appearance]。将设置直接应用于您希望样式的按钮。
如果要将该设置应用于所有按钮,请在创建任何按钮之前使用[UIBarButtonItem appearance]。
假设您只想设计一个按钮,那么您需要:
UIBarButtonItem *theatersNav = [[UIBarButtonItem alloc] initWithTitle:@"THEATERS" style:(UIBarButtonItemStyleDone) target:self action:@selector(theatersNavAction:)];
UIImage *userImage = [UIImage imageNamed:@"heart-normal"];
UIImage *userImageHighlighted = [UIImage imageNamed:@"heart-highlighted.png"];
[theatersNav setBackgroundImage:userImage forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
[theatersNav setBackgroundImage:userImageHighlighted forState:UIControlStateHighlighted barMetrics:UIBarMetricsDefault];https://stackoverflow.com/questions/26959780
复制相似问题