UIButton
以下で構成された背景画像を使用して を作成するにはどうすればよいですか:
- 固定左キャップ
- 固定右キャップ
- 利用可能なすべてのスペースを埋めるために次々に配置された多数の中間画像
下の例のように?
編集:中央にN個の繰り返し画像がなく、引き伸ばされた画像しかないことに気づきませんでした。受け入れられた回答を参照してください。
UIButton
以下で構成された背景画像を使用して を作成するにはどうすればよいですか:
下の例のように?
編集:中央にN個の繰り返し画像がなく、引き伸ばされた画像しかないことに気づきませんでした。受け入れられた回答を参照してください。
私の知る限り、それはできません。できることは画像を引き伸ばすことですが、n 個の中間画像を追加することはできません。
間に伸縮可能な画像を追加するためのコードは次のとおりです。
//Create an image - Where UIEdgeInsets is in top left bottom right
UIImage* buttonImage = [[UIImage imageNamed:@"button.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 16, 0, 16)];
// Create a custom buttom
UIButton *myButton = [UIButton buttonWithType:UIButtonTypeCustom];
myButton.frame = CGRectMake(0, 0, 100, buttonImage.size.height);
[myButton setBackgroundImage:buttonImage forState:UIControlStateNormal];
[myButton setTitle:@"Button" forState:UIControlStateNormal];
//Add it to view - if it is a view controller self.view
[self addView:myButton];
Apple のUIImage Class Referenceから:
" resizableImageWithCapInsets:
このメソッドを使用して、キャップ インセットを画像に追加したり、画像の既存のキャップ インセットを変更したりします。[...] 画像のスケーリングまたはサイズ変更中に、キャップで覆われた領域はスケーリングまたはサイズ変更されません。代わりに、各方向のキャップでカバーされていないピクセル領域は、画像のサイズを変更するために、左から右、上から下にタイル化されます." [強調追加]