長方形の画像(jpg)があり、それを使用してボタンの背景をxcodeの丸い角で塗りつぶします。
私は次のように書いた:
UIButton *button = [[UIButton buttonWithType:UIButtonTypeRoundedRect] retain];
CGRect frame = CGRectMake(x, y, cardWidth, cardHeight);
button.frame = frame;
[button setBackgroundImage:backImage forState:UIControlStateNormal];
ただし、この方法で取得するボタンの角は丸くありません。代わりに、元の画像とまったく同じように見える単純な長方形です。代わりに、ボタンを表す角が丸い画像を取得するにはどうすればよいですか?
ありがとう!
私はあなたの問題を手に入れたと思う、私はUITextAreaで次の解決策を試してみたが、これはUIButtonでもうまくいくと思う。
まず、これを.mファイルにインポートします-
#import <QuartzCore/QuartzCore.h>
そして、loadView
メソッドに次の行を追加します
yourButton.layer.cornerRadius = 10; // this value vary as per your desire
yourButton.clipsToBounds = YES;
これがあなたのために働くことを望み、もしそうなら通信してください。
このRunTime属性で達成できます
カスタムボタンを作成できます。添付のスクリーンショットをご覧ください。
ご注意ください:
ランタイム属性で、境界線の色を変更するには、この指示に従います
cALayerのカテゴリクラスを作成します
hファイル内
@property(nonatomic, assign) UIColor* borderIBColor;
mファイル内:
-(void)setBorderIBColor:(UIColor*)color {
self.borderColor = color.CGColor;
}
-(UIColor*)borderIBColor {
return [UIColor colorWithCGColor:self.borderColor];
}
ボーダーカラーチェックのスクリーンショットを設定します
ありがとう
DCKit と呼ばれる私のライブラリをチェックアウトしたいかもしれません。最新バージョンのSwiftで書かれています。
Interface Builderから角丸ボタン/テキストフィールドを直接作成できます。
また、検証のあるテキストフィールド、境界線のあるコントロール、破線の境界線、円とヘアラインビューなど、他の多くのクールな機能もあります。
インポートQuartCoreフレームワーク既存のプロジェクトにない場合は、#import <QuartzCore/QuartzCore.h>
をviewcontroller.mにインポートします
UIButton *button = [[UIButton buttonWithType:UIButtonTypeRoundedRect]];
CGRect frame = CGRectMake(x, y, width, height); // set values as per your requirement
button.layer.cornerRadius = 10;
button.clipsToBounds = YES;
UIButton* closeBtn = [[UIButton alloc] initWithFrame:CGRectMake(10, 50, 90, 35)];
//Customise this button as you wish then
closeBtn.layer.cornerRadius = 10;
closeBtn.layer.masksToBounds = YES;//Important
最初にボタンの幅= 100および高さ= 100を設定
客観的なCソリューション
YourBtn1.layer.cornerRadius=YourBtn1.Frame.size.width/2;
YourBtn1.layer.borderColor=[uicolor blackColor].CGColor;
YourBtn1.layer.borderWidth=1.0f;
Swift 4ソリューション
YourBtn1.layer.cornerRadius = YourBtn1.Frame.size.width/2
YourBtn1.layer.borderColor = UIColor.black.cgColor
YourBtn1.layer.borderWidth = 1.0
丸い角を1つまたは2つの角だけにしたい場合など...この記事を読んでください:
[ObjC] –角が丸いUIButton- http://goo.gl/kfzvKP
XIB /ストーリーボードサブクラスです。コードを記述せずにボーダーをインポートして設定します。
swift 3用に更新されました:
以下のコードを使用して、UIButtonの角を丸くします。
yourButtonOutletName.layer.cornerRadius = 0.3 *
yourButtonOutletName.frame.size.height
Swiftの場合:
button.layer.cornerRadius = 10.0
私のコードを試してください。ここで、テキストの色、背景の色、角の半径など、UIButtonのすべてのプロパティを設定できます。
extension UIButton {
func btnCorner() {
layer.cornerRadius = 10
clipsToBounds = true
backgroundColor = .blue
}
}
今、このように呼び出します
yourBtnName.btnCorner()
境界線も設定する(ボタンのようにする)別の答えはこちらです... カスタムタイプUIButtonの長方形の境界線を設定する方法
IOS Swift 4の場合
button.layer.cornerRadius = 25;
button.layer.masksToBounds = true;