3つの画像があるUITableViewがあります。選択したセルに1、セルの背景に1、TableViewの背景に1。
私の選択したセルは正常に機能していますが、通常のセルとTableViewの背景(スクロールダウン/アップしたときのセルの背景)にいくつかの問題があります
誰かが各セルの背景とTableViewの背景を手伝ってくれますか?これはどのように行われますか?
通常のセルの背景:(正しいかどうかわからない)
// CELL'S BACKGROUND-IMAGE
self.tableView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"cell_normal.PNG"]];
選択したセルの背景:
// SELECTED CELL'S BACKGROUND-IMAGE
UIView *viewSelected = [[[UIView alloc] init] autorelease];
viewSelected.backgroundColor = [UIColor colorWithPatternImage: [UIImage imageNamed:@"cell_highlighted.PNG"]];
cell.selectedBackgroundView = viewSelected;
セル用
cell.backgroundView = [[UIImageView alloc] initWithImage:[ [UIImage imageNamed:@"cell_normal.png"] stretchableImageWithLeftCapWidth:0.0 topCapHeight:5.0] ];
cell.selectedBackgroundView = [[UIImageView alloc] initWithImage:[ [UIImage imageNamed:@"cell_pressed.png"] stretchableImageWithLeftCapWidth:0.0 topCapHeight:5.0] ];
Tableviewの場合
[mEditTableView setBackgroundView:nil];
[mEditTableView setBackgroundView:[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Apple.png"]] ];
UITableViewCell
background color/imageを設定できます。デリゲートメソッドに従うことにより
- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath
*)indexPath
{
if((indexPath.row)==0)
cell.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"cell_normal.PNG"]]; //set image for cell 0
if (indexPath.row==1)
cell.backgroundColor = [UIColor colorWithRed:.8 green:.6 blue:.6 alpha:1]; //set color for cell 1
tableView.backgroundColor = [UIColor colorWithPatternImage: [UIImage imageNamed: @"cloud.jpg"]]; //set image for UITableView
}
Swiftでは、以下のようにUITableViewCellに背景画像を設定できます。
cell.backgroundView = UIImageView(image: UIImage(named: "yourImage.png")!)
テーブルビューのこの関数でこのコードを記述します。
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
この画像は行ごとに繰り返されます。
これはセルではなくtableViewの背景を設定します
// CELL'S BACKGROUND-IMAGE
self.tableView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"cell_normal.PNG"]];
cellForRowAtIndexPathでセルバックグラウンドを設定してみてください
cell.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"cell_normal.PNG"]];
Swift 4で、これは動作します:
cell.backgroundView = UIImageView.init(image: UIImage.init(named: "YORIMAGE.jpg"))
UITableviewCellの背景画像を設定するために、このブロックのコードを試すことができます
self.backgroundView = [[[UIImageView alloc] initWithImage:[[UIImage imageNamed:@"background.png"] stretchableImageWithLeftCapWidth:0.0 topCapHeight:5.0]] autorelease];
self.selectedBackgroundView = [[[UIImageView alloc] initWithImage:[[UIImage imageNamed:@"background_selected.png"] stretchableImageWithLeftCapWidth:0.0 topCapHeight:5.0]] autorelease];
それがあなたのために働くことを願っています。 :)
uITableviewセルに画像を設定します
cell.imageView.image = [UIImage imageNamed:@ "image.png"];
このソリューションだけが私のために働いた。
Cell.backgroundColor = [UIColor clearColor];
Cell.contentView.backgroundColor=[UIColor clearColor];
お役に立てれば !