テーブルビューにカスタムセルを使用しています。テーブルビューの背景画像がセルの隅に表示されるため、セルの背景として丸い境界線を持つグラデーションレイヤーを使用しました(図に示すように)。
これらの角を非表示にするにはどうすればよいですか? 私のコードは次のとおりです。
viewDidLoad では、テーブルは次のように設定されています。
Table.backgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"mac-gray.png"]];
Table.separatorColor = [UIColor clearColor];
Table.rowHeight = 83;
Table.showsVerticalScrollIndicator = NO;
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
@try {
static NSString *cellIdentifier;
//[self adjustHeightOfTableview:tableView];
if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)
{
cellIdentifier = @"Cell";
MarketWatch_iPhoneCell *cell = (MarketWatch_iPhoneCell *)[tableView dequeueReusableCellWithIdentifier:nil];
if (cell == nil)
{
NSString *nibName = @"iPhoneCell";
NSArray *nib = [[NSBundle mainBundle] loadNibNamed:nibName owner:self options:nil];
cell = (MarketWatch_iPhoneCell *)[nib objectAtIndex:0];
}
cell.layer.cornerRadius = 15.0;
cell.clipsToBounds = YES;
[cell addGradient];
cell.selectionStyle = UITableViewCellSelectionStyleNone;
.......
return cell;
}
-(void) addGradient
{
//adding gradient to cell
gradLayer = [CAGradientLayer layer];
gradLayer.colors = [NSArray arrayWithObjects:
(id)[UIColor darkGrayColor].CGColor,
(id)[UIColor colorWithRed:45/255 green:45/255 blue:45/255 alpha:1.0].CGColor,
(id)[UIColor colorWithRed:22/255 green:22/255 blue:22/255 alpha:1.0].CGColor,
(id)[UIColor blackColor].CGColor,
nil];
CGRect frame = self.frame;
frame.size.height -= cellMargin;
gradLayer.frame = frame;
gradLayer.cornerRadius = self.layer.cornerRadius;
gradLayer.borderWidth = 1.0;
gradLayer.borderColor = defaultColor;
[self.layer insertSublayer:gradLayer below:self.contentView.layer];
}
編集
ユーザーが最大コンテンツオフセットをスクロールしようとしたときに画像を表示するために、テーブルの背景画像を設定しました。
colorwithpatternimage
@Viral で提案されているように画像パターンを繰り返そうとすると、最大コンテンツ オフセットからスクロールしようとすると、そのパターンが表示されます。
だからここに私の2つの質問があります:
1) テーブルの背景画像を設定し、角の丸いセルを使用している場合、角を非表示にすることはできますか?
2) 画像を使用する方がはるかに簡単な場合、画像はどのようなサイズにする必要があり、ユーザーがオフセットを超えてスクロールした場合にそのパターンに従わないようにどのように設計する必要があります。
誰か私を導いてください。ありがとう...