0

目的は、UIButton のクリック時に UITextView のフォントの色と背景色を変更し、UIButton が再度クリックされたときに元の色に戻すことです。その後、繰り返します。

スクリーンショット

デフォルトの色設定

  • 文章:blackColor
  • バックグラウンド:lightGrayColor

ボタンのクリック時 (.. に変更)

  • 文章:greenColor
  • バックグラウンド:blackColor

(もう一度クリックすると、デフォルトの色設定に戻ります)

これまでのところ、私はこれを持っています:

- (IBAction) enableSleepMode:(id)sender {

    [txtNotes setTextColor:[UIColor greenColor]];
    [txtNotes setBackgroundColor:[UIColor blackColor]];

}

申し訳ありませんが、ここからどこへ行くべきか正確にはわかりません。前もって感謝します。

4

2 に答える 2

1

これを試して

 (void)setTextColor:(UIColor *)color forState:(UIControlState)state

[button setTextColor:[UIColor greenColor] forState:UIControlStateNormal];
[button setTextColor:[UIColor blackColor] forState:UIControlStateHighlighted];

 (void)setBackgroundColor:(UIColor *)color forState:(UIControlState)state

[button setBackgroundColor:[UIColor blackColor] forState:UIControlStateNormal];
[button setBackgroundColor:[UIColor lightgrayColor] forState:UIControlStateHighlighted];

そのようなものは、私はあなたが探しているものだと思います

于 2013-02-15T20:32:51.630 に答える
1

UITextView' ' ではなく ' 'のフォントの色と背景の色を変更するように言いましたよUIButtonね? . それからあなたは追加しましたUItextViewDelegateか?

私はこれをしました

編集:

    - (void)viewDidLoad
    {
    [super viewDidLoad];
    [txtView setBackgroundColor:[UIColor lightGrayColor]];
    [txtView setTextColor:[UIColor blackColor]];
    str = @"first";
    }

   -(IBAction)bt:(id)sender
{
    if([str isEqualToString:@"first"])
    {
        [txtView setBackgroundColor:[UIColor blackColor]];
        [txtView setTextColor:[UIColor greenColor]];
        str = @"second";
    }
    else
    {
       [txtView setBackgroundColor:[UIColor lightGrayColor]];
       [txtView setTextColor:[UIColor blackColor]];  
        str = @"first";
    }
}
于 2013-02-16T06:48:59.360 に答える