- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
LocationsScreenTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
NSArray* views = [[NSBundle mainBundle] loadNibNamed:@"LocationsScreenTableViewCell" owner:nil options:nil];
for (UIView *view in views) {
if([view isKindOfClass:[UITableViewCell class]])
{
cell = (LocationsScreenTableViewCell*)view;
}
}
}
CGRect rectlblTitle = CGRectMake(88, 5, 130, 21);
UILabel * lblTitle = [[UILabel alloc]initWithFrame:rectlblTitle];
lblTitle.backgroundColor = [UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:0.0];
lblTitle.textAlignment = UITextAlignmentLeft;
lblTitle.textColor = [UIColor whiteColor];
lblTitle.text = [arrPlaces objectAtIndex:indexPath.row];
CGRect rectlblDescription = CGRectMake(88, 26, 210, 35);
UILabel * lblDescription = [[UILabel alloc]initWithFrame:rectlblDescription];
lblDescription.backgroundColor = [UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:0.0];
lblDescription.textAlignment = UITextAlignmentLeft;
lblDescription.textColor = [UIColor whiteColor];
lblDescription.text = @"Here comes the cell's description. you can choose whatever you like. :)";
lblDescription.font = [UIFont systemFontOfSize:12.5];
lblDescription.numberOfLines = 2;
CGRect rectlblDate = CGRectMake(245, 2, 80, 21);
UILabel * lblDate = [[UILabel alloc]initWithFrame:rectlblDate];
lblDate.backgroundColor = [UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:0.0];
lblDate.textAlignment = UITextAlignmentLeft;
lblDate.textColor = [UIColor whiteColor];
lblDate.text = @"11.01.2012";
lblDate.font = [UIFont systemFontOfSize:12.5];
lblDate.numberOfLines = 1;
[cell.contentView addSubview:lblTitle];
[cell.contentView addSubview:lblDescription];
[cell.contentView addSubview:lblDate];
return cell;
}
我怎样才能从lblTitle.text中获取文本并将其推送到:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { PlaceDitailsScreen * tempscreen = [[PlaceDitailsScreen alloc]init [self.navigationController pushViewController:tempscreen animated:YES]; }
但是当我点击另一个UITableViewCell时,它会为我点击的每一行发送lblTitle .
谢谢!
1 回答
我旁边没有Mac,所以我的代码可能包含一些错误 .
我理解的是:当您单击单元格时,您希望从单元格中的标签获取文本 .
我的解决方案
在您的cellForRowAtIndexPath方法中添加该行:
然后在didSelectRowAtIndexPath方法中你可以做到:
正如我所说:我附近没有Mac,所以你必须稍微玩一下代码 .
希望能帮助到你