在地图应用中,当您按下左下角的跟踪按钮时,它会发光显示已按下。这使它的行为就像一个单选按钮,一旦你移动地图它就会取消发光。有一个简单的方法,但按钮进入按下状态?
答案 0 :(得分:11)
我相信您正在寻找UIButton类的showsTouchWhenHighlighted属性。试一试。
myButton.showsTouchWhenHighlighted = YES;
答案 1 :(得分:10)
将其样式设置为UIBarButtonItemStyleDone。
答案 2 :(得分:3)
您可以将自定义视图设为这样的自定义按钮:
`
UIImage *image = [UIImage imageNamed:@"someimage"];
UIImage *imageHL = [UIImage imageNamed:@"someimage_selected"];
button = [UIButton buttonWithType:UIButtonTypeCustom];
[button setImage:image forState:UIControlStateNormal];
[button setImage:imageHL forState:UIControlStateHighlighted];
[button addTarget:self action:@selector(doStuff:) forControlEvents:UIControlEventTouchUpInside];
myBarButtonItem.customView = button;
`
答案 3 :(得分:1)
使用UIBarButtonItemStylePlain
。
UIBarButtonItemStylePlain
点击时发光。
答案 4 :(得分:0)
如果您的UIBarButtonItem包含image/text
或UIBarButtonSystemItem
,请使用UIBarButtonItemStylePlain
barButton.style = UIBarButtonItemStylePlain;
如果你有一个带有自定义视图的UIBarButtonItem,那么,对于每个UIButton
,应该添加以下代码:
uiButton.showsTouchWhenHighlighted = YES;