0

UIImageView がこれをうまくやってくれるので、私はそれが可能だと思った。drawRect:画像を水平方向に中央揃えする方法で UIView のメソッドで UIImage を描画し、UIImageの側面を引き伸ばして UIView のリマインダーを埋めることはできますか?

- (void)drawRect:(CGRect)rect {
    [[[UIImage imageNamed:@"image"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 2, 0, 2)] drawInRect:rect];
}

画像全体が伸び続けます。たとえば、画像の幅は 100 ピクセルです。中央の 90 ピクセルは引き伸ばすことができませんが、両側に 5 つのピクセルがあり、両側で四角形の端まで引き伸ばしたいと考えています。

4

1 に答える 1

0

残念ながら、それは resizableImageWithCapInsets: の仕組みではありません。端が伸ばされないように設計されており、残りのスペースを埋めるために真ん中のビットを並べます。

あなたが望むものを実現するには、おそらく 3 つの画像を並べて描画する必要があります。

それが役立つことを願っています。

于 2013-01-29T22:47:30.263 に答える