0

UITextView折りたたみ可能な がありますTableViewCell。で、上のテキストと下のテキストをフェードアウトさUITextViewせたいです。CAGradientLayer

を入れて作りUIViewましUITextViewた。これはすべてセル内にあります

セル内の UIView

セルまたはView Controllerでコードを設定する方法がわかりません。

私のテスト コードは Github: Fun with Mask by Ewan Davids からのものです。

[self createGradientMask];

(void)メソッドはどこに置くべきですか?TableViewCellまたはViewController? _

    - (void)createGradientMask
        {
            //creating our gradient mask
        CAGradientLayer *maskLayer = [CAGradientLayer layer];

        //this is the anchor point for our gradient, in our case top left. setting it in the middle (.5, .5) will produce a radial gradient. our startPoint and endPoints are based off the anchorPoint
        maskLayer.anchorPo = CGPointZero;

        //The line between these two points is the line our gradient uses as a guide
        //starts in bottom left
        maskLayer.startPoint = CGPointMake(0.0f, 1.0f);

        //ends in top right
        maskLayer.endPoint = CGPointMake(1.f, 0.0f);

        //setting our colors - since this is a mask the color itself is irrelevant - all that matters is the alpha. A clear color will completely hide the layer we're masking, an alpha of 1.0 will completely show the masked view.
        UIColor *outerColor = [UIColor colorWithWhite:1.0 alpha:0.0];
        UIColor *innerColor = [UIColor colorWithWhite:1.0 alpha:1.0];

        //an array of colors that dictatates the gradient(s)
        maskLayer.colors = @[(id)outerColor.CGColor, (id)outerColor.CGColor, (id)innerColor.CGColor, (id)innerColor.CGColor];

        //these are percentage points along the line defined by our startPoint and endPoint and correspond to our colors array. The gradient will shift between the colors between these percentage points.
        maskLayer.locations = @[@0.0, @0.15, @0.5, @1.0f];

        maskLayer.bounds = CGRectMake(0, 0, CGRectGetWidth(self.view.bounds), 

    CGRectGetHeight(self.view.bounds));

            self.underTextView.layer.mask = maskLayer;
        }
  • では、プロパティTableViewCellを認識しません。view
  • では、ViewControllerを認識できませんUITextView property

QuartzCore.framework が追加されました。

4

1 に答える 1

1

グラデーション コードを tableview データ ソース メソッド内に配置します。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    // code to customize cell here
}

この時点で、色、テキスト、レイヤー、サブビューなどのセル ビューをカスタマイズする機会があります...

于 2014-06-30T21:26:11.447 に答える