web-dev-qa-db-ja.com

カスタムボーダーカラーのUIButton、iPhone

長方形のカスタムUIButtonを作成したいと思います。このために、UIButtonの背景として長方形のビューを使用し、UIbuttonの背景色をclearcolorにします。しかし、UIbuttonの境界はまだ残っています。境界線を消す方法について何か提案はありますか?事前に助けてくれてありがとう。

15
alekhine

これを試して:

    UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
    [button.layer setBorderColor:[[UIColor clearColor] CGColor]];

ただし、.hまたは.mファイルを追加することを忘れないでください

#import <QuartzCore/QuartzCore.h>
39
Prabh

上で提案したようにlayerプロパティを設定しているのに、数分を無駄にして、境界線が表示されないことに不満を感じました。

以下を使って幅を設定すると、ボタンの枠が見えました。

[[button layer] setBorderWidth:2.0f];
13
Madhav Sbss
  button.layer.borderColor = UIColor.orangeColor().CGColor

オレンジ色の境界線の迅速な例

2
Elazaron

ボタンのlayerプロパティにアクセスして、CALayerの境界線プロパティを設定できます。

クォーツを追加

#import <QuartzCore/QuartzCore.h>

ボタンのプロパティを設定します。

[[myButton layer] setBorderWidth:2.0f];
[[myButton layer] setBorderColor:[UIColor AnyColor].CGColor];
1
Rajput V.K

UIButtonのタイプをRounded RectではなくCustomに設定する必要があります([〜#〜] ib [〜#〜]を介してボタンを作成する場合) =)。

プログラムでUIButtonを作成している場合は、次のコードを使用します。

UIButton *but = [UIButton buttonWithType:UIButtonTypeCustom];

その後、独自のカスタマイズを行うことができます。

0
Nekto