コードに直接設定することなく、Xcodeのボタンにボーダーを表示することはできません。カスタム背景画像を作成せずにストーリーボードでこれを行う方法はない可能性がありますか?ストーリーボードのUIButtonのボーダーを設定します
答えて
キーパスを使用できます。
たとえば、画像に記載されているコーナーの半径(layer.cornerRadius
)。 ストーリーボードで効果を見ることができません。このパラメーターは実行時に評価されるためです。今あなたがカテゴリを使用している場合、キーのパスとしてのみcornerRadius
ないlayer.cornerRadius
を使用し、(ストーリーボードで結果を表示するために@IBInspectable
でUIViewの中SWIFTカテゴリ(画像怒鳴るコード)を使用することができます。
ここで
extension UIView {
@IBInspectable var cornerRadius: CGFloat {
get {
return layer.cornerRadius
}
set {
layer.cornerRadius = newValue
layer.masksToBounds = newValue > 0
}
}
}
使用キーパスlayer.borderUIColor
は、境界線の色を設定することができPeter DeWeese答えからカテゴリです。
のCALayer + XibConfiguration.h:
#import <QuartzCore/QuartzCore.h>
#import <UIKit/UIKit.h>
@interface CALayer(XibConfiguration)
// This assigns a CGColor to borderColor.
@property(nonatomic, assign) UIColor* borderUIColor;
@end
のCALayer + XibConfiguration.m:
#import "CALayer+XibConfiguration.h"
@implementation CALayer(XibConfiguration)
-(void)setBorderUIColor:(UIColor*)color
{
self.borderColor = color.CGColor;
}
-(UIColor*)borderUIColor
{
return [UIColor colorWithCGColor:self.borderColor];
}
@end
次のようなコードの一部を使用することができます。
self.addButton.layer.borderColor = [[UIColor greenColor] CGColor];
ますのでご注意ください:addButton
はIBOutletです。
質問者はプログラミング以外の方法が必要です。 –
スウィフト3 あなたがIBInspectableを使用するときにIBで結果を見たい場合は、あなたがUIViewのを拡張し、そのクラスにプロパティを追加する必要があり、すなわち
@IBDesignable class MyView: UIView {}
extension MyView {
@IBInspectable var cornerRadius: CGFloat {
get {
return layer.cornerRadius
}
set {
layer.cornerRadius = newValue
layer.masksToBounds = newValue > 0
}
}
@IBInspectable var borderWidth: CGFloat {
get {
return layer.borderWidth
}
set {
layer.borderWidth = newValue
layer.masksToBounds = newValue > 0
}
}
@IBInspectable var borderColor: UIColor {
get {
return UIColor.init(cgColor: layer.borderColor!)
}
set {
layer.borderColor = newValue.cgColor
}
}
}
これは素晴らしいです! – ilovebigmacs
- 1. UIButtonイメージをインタフェースビルダー/ストーリーボードに設定
- 2. UIButtonボーダーの長さサイズをプログラムで設定する方法
- 3. スウィフトは、私はストーリーボードにUIButton境界線の色を設定しようとしているストーリーボード
- 4. ストーリーボード - デリゲートの設定
- 5. テーブルのボーダーを設定する方法
- 6. UICollectionViewのボーダーを設定する
- 7. Actionscript 3.0のテキストアウトライン/ボーダーを設定する
- 8. LinearLayoutのボーダーをプログラムで設定する
- 9. ストーリーボード上のiOS10丸めUIButtonの表示
- 10. UIButtonイメージの前にUIButtonのタイトルを設定するには
- 11. UIButtonサブクラス - プロパティの設定?
- 12. UIButtonの設定方法は?
- 13. textViewのボーダーと背景色を設定します
- 14. UIButtonのタイトルラベルを設定する
- 15. UIButtonのタイトルを設定する
- 16. UIButtonの外観もキーボードボタンを設定します
- 17. UIButtonのイメージをプログラムで設定しますか?
- 18. UICellにあるUIButtonのタイトルを設定します。
- 19. UICollectionViewCellのサイズにUIButtonを設定します
- 20. UIButtonコードでタッチハンドラを設定
- 21. WPFでの動的ボーダー設定
- 22. どのようにストーリーボードのUIButtonからカスタムセグ(モーダルセグ)を実行しますか
- 23. ストーリーボードのカスタムIBDesignableクラスをUIButtonにリンクできません
- 24. UIButton:画像ビューの背景を設定する(画像を設定しない)
- 25. iPhone設定UIButtonでバンドル
- 26. 右下のuibuttonの画像設定
- 27. UIButtonの背景のアルファを設定しますが、タイトルは設定しません。
- 28. ストーリーボードOSXアプリケーションでinitialFirstResponderを設定する
- 29. 表示ラベルを設定する - xCodeストーリーボード
- 30. NSTimerとUIButtonを設定するには
あなたは何か新しいことを毎日学びます。これは何ヶ月も前に知っていたのは役に立ちました。 – RyanG
うわー、これはとても涼しいです!私はこの隠された宝石について知りませんでした! Upvoted。 – Macondo2Seattle
ところで、ボーダーが表示されるように 'layer.borderWidth'を設定しなければなりませんでした。 – Macondo2Seattle