在 iPhone TableView 单元格的右侧添加小箭头

这应该很简单。

我有一个带 TableView 的 iPhone 应用程序。如何将经典的小箭头添加到每个单元格的右侧?

105054 次浏览

只需设置 UITableViewCell的相应 < em > accoryType 属性。

cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;

Swift 3中,

cell.accessoryType = .disclosureIndicator

使用单元格的 accessoryType属性在右侧显示一个箭头。参见 这个

对于简单的箭头:

cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;

以及详细的箭头:

cell.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;

另一种方法是在创建单元格时指定 UITableViewCellAccessoryDisclosureIndicator。为此,您可能会在 tableViewCellWithReuseIdentifier 委托方法中分配初始化单元格(然后继续定制和配置单元格)。

UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellAccessoryDisclosureIndicator reuseIdentifier:identifier];

你可以像下面这样设置经典的小箭头

1)使用 UITableViewCell 的内置附件类型方法

[cell setAccessoryType:UITableViewCellAccessoryDisclosureIndicator];

2)用自己的图像创建自己的配件视图

(I)在您的项目中拖放一个箭头图像(即圈 _ row _ right png)

(II)在单元格设计方法中,每行如下

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

写下代码:

if (cell ==nil) {
cell=[[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault  reuseIdentifier:CellIdentifier]autorelease];


//For creating custom accessory view with own image
UIImageView *accessoryView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 30, 30)];
[accessoryView setImage:[UIImage imageNamed:@"circle_arrow_right.png"]];
[cell setAccessoryView:accessoryView];
[accessoryView release];


//Your other components on cells
.............
.............


}

[ 注:选择合适的图像配件视图,并添加您所需的单元格。为了获得更好的性能,选择小图像作为附件视图。]

你可以用 Interface Builder。只需单击 表格视图,转到右侧的 原型细胞,使其为1。然后单击该 原型细胞并在右侧查找 从犯。在下拉列表中,单击 披露指标

Interface Builder example

斯威夫特3:

cell.accessoryType = .disclosureIndicator

最好的方法是在 Accessory部分选择 Disclosure Indicator

在雨燕5号

使用

cell.accessoryType = .detailButton

右边的一个小信息按钮。 enter image description here

cell.accessoryType = .disclosureIndicator

右边的一个小信息箭头。 enter image description here

cell.accessoryType = .detailDisclosureButton

右边的一个小信息按钮和信息箭头。 enter image description here

在你的 return cell前面