2011-01-26 8 views
0

標準UIButtonにカスタム画像を追加しようとしています。私はそれを行う方法のsetBackgroundImagesetImageを知っています。しかし、これは '標準'の境界を削除します! UIButtonTypeCustomまたはUIButtonTypeRoundRectを使用すると、同じ結果が得られます。カスタム画像の標準UIButton

これはとても難しいですか? navigationbarのような通常のボタン - titleLabelではなくカスタム画像です。私は本当に画像エディタでボタン自体を描く必要がありますか?

答えて

2

はい、カスタム画像を描画する必要があります。

+0

私が聞いていないことを望みました;-) – pawi

2

UIButtonRoundRectに画像のサブビューを追加できます。

UIButton *button = [UIButton buttonWithType:UIButtonRoundRect]; 

は、あなたのイメージとイメージビューを作成して、ボタンにサブビューとして追加:

UIImageView *iv = [[UIImageView alloc] initWithImage:(UIImage *)image]; 

[button addSubivew:iv]; 

トリックを行う必要がありますので、ちょうどRoundRectボタンを通常の方法を作成します。また、その画像ビューの位置を設定することもできます。[iv setCenter:CGPointMake(x,y)];

+0

さて、画像をサブビューとして追加するというのは良いことです。しかし、UIButtonRoundRectを使用しても、「標準」ボタンの外観は得られません。とにかくありがとう! – pawi

+0

どうやってこれを動作させましたか? '' UIButton 'が' -addSubview: ''に応答しないことがあるという警告が表示され、その行にヒットしたときにアプリがクラッシュします。 – MusiGenesis

+0

そのsetCenterトリックは私が探していたものです。 –

関連する問題