UITableViewの一部のセルに異なる幅の線を引くことは可能ですか?
このようなもの:
私はXcode 4.6を使用しており、ターゲットはiOS5+です
質問する
749 次
3 に答える
1
それがどのように機能するかについての大まかな考え。再利用可能なセルの内容が変更された場合は、赤い線を管理する必要があります。
CGSize size = [cell.textLabel.text sizeWithFont:cell.textLabel.font];
CGFloat y = cell.contentView.frame.size.height / 2;
UIView *line = [[UIView alloc] initWithFrame:CGRectMake(5,y,size.width, 3)];
line.backgroundColor = [UIColor redColor];
[cell.textLabel addSubview:line];
于 2013-02-05T16:02:57.857 に答える
0
tableViewCellの上にいくつかの線(画像など)を作成します
[cell.contentView addSubView:$LINE_IMAGE_VIEW]のように
このようにラベルの幅を取得できます
CGFloat width = cell.titleLabel.frame.size.width
次に、その幅をカスタムラインイメージに割り当てます。
于 2013-02-05T14:13:45.593 に答える
0
これにより、セル全体が取り消し線で消されます。完了したタスクのように見せるために必要な場合:
CGSize size = cell.contentView.frame.size; // you'll draw the line in whole cell.
UIView *line = [[UIView alloc] initWithFrame:CGRectMake(15,size.height / 2,size.width - 30, 1)];
line.backgroundColor = [UIColor grayColor]; // set your preferred color
[cell addSubview:line];
15の代わりにCGRectMakeで他の値を指定することもできます。これは、Xでオフセットされます。この場合、見栄えを良くするために、幅を2倍の値(私の場合は15 * 2 = 30)だけ減らした方がよいでしょう。
于 2015-03-04T07:56:21.857 に答える