我一直在使用以下代码来更改我添加的项目的文本颜色UIActionSheet.:
- (void)willPresentActionSheet:(UIActionSheet *)actionSheet {
for (UIView *subview in actionSheet.subviews) {
if ([subview isKindOfClass:[UIButton class]]) {
UIButton *button = (UIButton *)subview;
[button setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
}
}
}
Run Code Online (Sandbox Code Playgroud)
它工作正常iOS7,但在iOS8上面的代码中不会更改项目的文本颜色.
现在的问题是如何改变我在新增项目的文本颜色UIActionSheet使用iOS8?
附加信息:
我添加了断点,以查看上述代码中的以下行是否被执行:
UIButton *button = (UIButton *)subview;
[button setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
Run Code Online (Sandbox Code Playgroud)
这些行不会被执行.所以,if([subview isKindOfClass:[UIButton class]])总是false适用于所有项目actionSheet.subviews.所以我认为观点层次
UIActionSheet改变了.
我已经在我的项目中实现了部署目标ios7的动作表,并且较少的动作表工作正常.
Ios8中的UIActionsheet与其他版本的Ios不同.我如何让它正常工作?
谢谢