2017-02-02 19 views
0

UIButtonを作成する必要があります。右の画像と中央のテキストが必要です。このように:右画像と中央揃えのテキストのUIButton

enter image description here

「iOSデベロッパ」の答えのおかげで、私は、ボタンの上に画像やテキストを追加することで、私が欲しいものを作るコードを書かれており、エッジのインセットを変更しました:

+ (void)addImageWithName:(NSString *)imageName onButton:(UIButton *)btn { 
    [btn setImage:image forState:UIControlStateNormal]; 
    [btn setImage:image forState:UIControlStateHighlighted]; 

    CGFloat margin = 10.f; 
    btn.imageEdgeInsets = UIEdgeInsetsMake(0.f, btn.frame.size.width - image.size.width - margin, 0.f, 0.f); 

    btn.titleEdgeInsets = UIEdgeInsetsMake(0.f, -image.size.width - margin, 0.f, 0.f); 
} 

テキストは、このコードを追加します

[btn setTitle:@"hello world" forState:UIControlStateNormal]; 

しかし、テキストが長すぎる場合、それはイメージ以上になると外のボタンを行きます。どのように私はこれをprevendすることができますか?

enter image description here

答えて

1

あなたはXcodeの8.2.1で作業している場合、あなたはボタンのコンテンツのインセットを見つけることができます、あなたはXcodeの7で作業しているストーリーボードViewController.Ifでサイズインスペクタセクションのタイトルインセット&イメージ・インセットまたはアトリビュートインスペクタセクションでそのオプションを見つけることができます。必要に応じて、タイトルインセット&イメージインセットを設定できます。

関連する問題