搜尋

首頁  >  問答  >  主體

ios - UIActionsheet button 颜色

UIActionsheet button 颜色

用这种方式 不好使, 显示actionSheet.subviews 为空
for (id obj in actionSheet.subviews) {

1

2

3

4

5

6

7

8

9

<code>    if ([obj isKindOfClass:[UIButton class]]) {

 

        UIButton *btn=(UIButton *)obj;

 

        [btn setTitleColor:[UIColor orangeColor] forState:UIControlStateNormal];

 

    }

}

</code>

大家讲道理大家讲道理2889 天前849

全部回覆(3)我來回復

  • 巴扎黑

    巴扎黑2017-04-17 15:34:05

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    <code>- (void) changeTextColorForUIActionSheet:(UIActionSheet*)actionSheet {

        UIColor *tintColor = [UIColor redColor];

     

        NSArray *actionSheetButtons = actionSheet.subviews;

        for (int i = 0; [actionSheetButtons count] > i; i++) {

            UIView *view = (UIView*)[actionSheetButtons objectAtIndex:i];

            if([view isKindOfClass:[UIButton class]]){

                UIButton *btn = (UIButton*)view;

                [btn setTitleColor:tintColor forState:UIControlStateNormal];

     

            }

        }

    }

    </code>

    確保這個方法是在 showInView 之後調用的,如果在 showInView 之前調用,除了 cancel button 之外的所有 button 都會被上色。

    回覆
    0
  • 怪我咯

    怪我咯2017-04-17 15:34:05

    UIButton *button = [UIButton buttonWithType:UIButtonTypeSystem];
    [按鈕設定標題顏色...];

    回覆
    0
  • 怪我咯

    怪我咯2017-04-17 15:34:05

    [[UIView appearance] setTintColor:[UIColor redColor]];

    備註:因為是修改view的顏色,所以要在alert點選消失之後還原view的顏色 連結描述

    回覆
    0
  • 取消回覆