タッチしたときにUIButtonを色で塗りつぶしたい。メソッドはアクションメソッドで実装できます
- (IBAction)bocClick:(UIButton *)sender {
[sender setBackgroundColor:[UIColor blackColor]];
}
私は以下のようなボタンを取得します
この背景は私のニーズには十分ではありません..のような効果が必要です..
カスタマイズが少し複雑な丸いrect
ボタンを使用しています。
カスタム タイプのボタンを作成して背景画像を使用するか、カスタム タイプのボタンを作成して角を丸くしcolour
、レイヤーの背景を自分で設定できます。
または、次のようにすることもできます:-
次の例のように UIView または Lable を追加できます。
- (IBAction)bocClick:(UIButton *)sender {
UILabel *lbl2=[[UILabel alloc]initWithFrame:_btn.bounds];
lbl2.text=@"Button";
lbl2.textAlignment=UITextAlignmentCenter;
lbl2.font=[UIFont boldSystemFontOfSize:16];
lbl2.backgroundColor=[UIColor redColor];
lbl2.layer.cornerRadius = 5;
lbl2.layer.masksToBounds = YES;
[sender addSubview:lbl2];
}
出力は:-
似たようなもの:-
tintColor
プロパティ
を設定するだけです:[sender setTintColor:[UIColor redColor]];
したがって、TouchUpInside のときにハイライト色が得られます。背景色も変更したい場合は、より複雑になります。次に、使用する必要がありますQuartz
ボタンのタイプを UiButtonTypeCustom に変更してみてください。下の画像を見てください。
それがあなたを助けることを願っています。
こうするだけ
UIButton * bocClick = [UIButton buttonWithType:UIButtonTypeCustom];