2017-04-18 20 views
2

私はOSX(iOS以外)、Xcode 8.2、Objective-CNSButtonテキストインセット、自動レイアウト制約付き

私は制約付きのボタンを2つ持っています。どちらのボタンも中央揃えのタイトルを持っていて、どちらも同じ幅を持っています(制約を介して)。いいえ、別の言語になると、長いテキストに合わせてボタンが大きくなります。しかし、私は、ボタンの境界線とテキストの間にある程度のスペースが必要です。 IBのタイトルインセットオプションはNSButtonsでは存在せず、同等のソリューションは見つかりませんでした。 ( "新プロジェクトは、" 一番上のボタンです)

enter image description here

答えて

0

あなただけのようintrinsicContentSize読み取り専用プロパティをオーバーライドする必要があります。

すべてのヘルプは、下のボタンの

enter image description here

制約を高く評価しましたあなたはUILabelで行います

ここでは上書きの例です属性インスペクタを経由して、あなたのXIB /ストーリーボードファイルにその値を設定することができますプロパティを持つNSButtonをINGの

コーディング
//CustomButton.h file 

@interface CustomButton : NSButton 

@property (nonatomic, assign) IBInspectable CGFloat horizontalPadding; 
@property (nonatomic, assign) IBInspectable CGFloat verticalPadding; 

@end 

//CustomButton.m file 

@implementation CustomButton 

- (NSSize) intrinsicContentSize{ 
    CGSize size = [super intrinsicContentSize]; 
    size.width += self.horizontalPadding; 
    size.height += self.verticalPadding; 
    return size; 
} 

@end 

ハッピー

関連する問題