1

私はUIImageView内側にUITableViewCellありUITableViewStyleGroupedます。丸みを帯びたテーブルセルの(0,0)の場所に画像を配置しました。アプリケーションを実行すると、UIImageViewまだ左隅が表示されていることがわかりました。セル内のImageviewはクリップされません。のコーナー半径を設定せずに、誰でも解決策を得ることができますかUIImageView

4

2 に答える 2

2

これを行う方法は、レイヤーマスクとコーナー半径を使用することだと思います。方法は次のとおりです。

UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:frame
                                                           byRoundingCorners:UIRectCornerAllCorners
                                                                 cornerRadii:CGSizeMake(5.0, 5.0)];
            // Create the shape layer and set its path
            CAShapeLayer *maskLayer = [CAShapeLayer layer];
            maskLayer.frame = frame;
            maskLayer.path = maskPath.CGPath;
            // Set the newly created shape layer as the mask for the image view's layer
            imageView.layer.mask = maskLayer;
imageView.layer.cornerRadius = 5.0;

frameそれがあなたのイメージビューのフレームであると仮定します。そして、忘れないでください#import <QuartzCore/QuartzCore.h>。幸運を!

于 2012-10-19T05:36:42.850 に答える
0

セルのclipsToBoundsプロパティを に設定しYESて、目的の結果が得られるかどうかを確認してください。

于 2012-10-19T05:39:32.470 に答える