Ios 选择UITableView的行并不重要?

Ios 选择UITableView的行并不重要?,ios,uitableview,row,Ios,Uitableview,Row,我有一个“UITableView”,我试图处理所选行并相应地使用其数据 我已经编写了获取所选行的必要代码,不幸的是,它似乎不起作用 如果我什么都不选 NSIndexPath *path = [tableViewDoctorName indexPathForSelectedRow]; int rowSelected = path.row; 所选行的值为0 但是,当我选择该行时,它再次为0 我一张桌子只有一排,我不知道这有什么关系 如何准确确定“UITableView”中的选定行?设置UITabl

我有一个“UITableView”,我试图处理所选行并相应地使用其数据

我已经编写了获取所选行的必要代码,不幸的是,它似乎不起作用

如果我什么都不选

NSIndexPath *path = [tableViewDoctorName indexPathForSelectedRow];
int rowSelected = path.row;
所选行的值为0

但是,当我选择该行时,它再次为0

我一张桌子只有一排,我不知道这有什么关系


如何准确确定“UITableView”中的选定行?

设置UITableView委托并实现此方法:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
           int rowSelected = indexPath.row;
 }        

设置UITableView委托并实现此方法:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
           int rowSelected = indexPath.row;
 }        

indexPath.row
第一行以0开始,您只有一行,然后它总是返回0

但是,如果您想获取所选行的数据,则可以委托
UITableView
的方法

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{  
  // here you can get directly indexPath.row so you can get required data;
}

indexPath.row
第一行以0开始,您只有一行,然后它总是返回0

但是,如果您想获取所选行的数据,则可以委托
UITableView
的方法

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{  
  // here you can get directly indexPath.row so you can get required data;
}

当然,tableView中有多少行很重要:如果只有1,那么它的indexpath是(0,0),在这种情况下,这是唯一可以(选择)的行

选定的行通常高亮显示(蓝色),因此如果不希望此蓝色选择保持在屏幕上,您可能希望将其存储在tableView代理的另一个属性中

通常,在
UITableViewDelegate
中:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    // deselect the row, to avoid the 'blue' selection to stay on-screen
    [tableView deselectRowAtIndexPath:indexPath animated:YES];

    // save your own copy of 'last' selected indexPath
    self.mySavedIndexPath = indexPath;    
}

当然,tableView中有多少行很重要:如果只有1,那么它的indexpath是(0,0),在这种情况下,这是唯一可以(选择)的行

选定的行通常高亮显示(蓝色),因此如果不希望此蓝色选择保持在屏幕上,您可能希望将其存储在tableView代理的另一个属性中

通常,在
UITableViewDelegate
中:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    // deselect the row, to avoid the 'blue' selection to stay on-screen
    [tableView deselectRowAtIndexPath:indexPath animated:YES];

    // save your own copy of 'last' selected indexPath
    self.mySavedIndexPath = indexPath;    
}
在职能之外,, 使用此选项可获取所选行

 NSIndexPath *indexPath = [NSIndexPath indexPathForRow: _selectedIndexPath.row inSection:0];
int rowSelected = indexPath.row;
在职能之外,, 使用此选项可获取所选行

 NSIndexPath *indexPath = [NSIndexPath indexPathForRow: _selectedIndexPath.row inSection:0];
int rowSelected = indexPath.row;

首先检查您的indexPath不是nil。如果为零,则未选择任何单元格。但是如果您使用
intx=path.row
并且path为nil,那么x将为0。首先检查您的indexPath是否为nil。如果为零,则未选择任何单元格。但是如果您使用
int x=path.row
并且path为零,那么x将为0。检查我的答案,您将得到它。检查我的答案,您将得到它。