我想在UITableView的单元格上获取多个自定义文本。点击单元格上的动态添加按钮后,我需要这些文本。我不能使用didRowSelectedAtIndex方法。我有我自己的选择器,但我不知道如何在每个单元格上获取文本。任何人都可以帮助我?无法在UITableViewCell上获取文本
谢谢
我想在UITableView的单元格上获取多个自定义文本。点击单元格上的动态添加按钮后,我需要这些文本。我不能使用didRowSelectedAtIndex方法。我有我自己的选择器,但我不知道如何在每个单元格上获取文本。任何人都可以帮助我?无法在UITableViewCell上获取文本
谢谢
在点击将标签设置为标签后,按钮调用的方法。
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
customLabel1 = [[UILabel alloc] initWithFrame:CGRectMake(5, 5, 50, 20)];
customLabel2 = [[UILabel alloc] initWithFrame:CGRectMake(55, 5, 50, 20)];
[cell.contentView addSubview:customLabel1];
[cell.contentView addSubview:customLabel2];
}
和
- (IBAction) click
{
customLabel1.text = @"YAYA";
customLabel2.text = @"GAGA";
}
您添加一个UILabel到单元格的视图。就像你用你的自定义按钮做的一样。
您可以预先向所有单元添加UILabel。如果一个单元格上的UIButton被点击了,你必须在某处保存这个状态信息(NSArray)。当谈到渲染单元,你问的数组,如果当前索引处的细胞应该表现出一些文字,如果是这样设置它...
如果你想即时渲染调用[self.tableView reloadData]
- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {
if (array at index indicates clicked) {
myCustomCell.label1 = @"foo";
} else {
myCustomCell.label1 = @"bar";
}
}
如果你不喜欢海关单位。您可以将标签应用于标签,将标签添加到单元格中,然后通过该标签查询单元格获取。
是的我有三个UILabels添加在单元格的contentView。但是单元格会在运行时动态添加。所以不能提前将所有标签放入NSArray中。我实际上想知道点击添加按钮的单元格,以便可以在该单元格上获取文本。 – 2011-02-24 10:25:44
1.您不会将标签保存在数组中,而是保存信息(如果单元格已被点击)。 2.在渲染单元格时,请考虑该信息以设置标签的文字。 – 2011-02-24 10:46:22
也许你可以尝试通过延长的UIButton创建一个自定义按钮,添加属性包含对NSString对象的引用(或索引原数组,其中字符串被存储等)。
然后在按钮上单击,您可以将发件人强制转换为您的自定义按钮类型,并简单地检索属性值。
您可能需要添加一些代码,以便人们了解可能出现的问题。 – koregan 2011-02-24 10:10:16
代码会太长,并在不同的地方片..我试图通过单词解释它 – 2011-02-24 10:36:58