如何将NSIndexpath转换为NSInteger或简单地转换为int?

时间:2011-01-01 15:07:05

标签: iphone cocoa-touch

我需要将nsindexpath var转换为NsInteger或简单地转换为int。 例如:

 int rowIndex = [mGoogleBaseTable selectedRow];
 //mGoogleBaseTable is a NSTable type in Macdevelopement..

&安培;&安培;

int rowIndex = [mGoogleBaseTable indexPathForSelectedRow];
//mGoogleBaseTable is a UITableView type in Iphone (iOS)Development.

selectedRow返回NSInteger,但indexPathForSelectedRow返回NSIndexPath ..

请帮助我如何实现这一目标。

6 个答案:

答案 0 :(得分:128)

如果

NSIndexPath *p = ... // some indexpath

然后

NSInteger row = p.row;
NSInteger section = p.section;

这就是全部!

答案 1 :(得分:14)

也许,这可以帮到你

NSInteger variable = indexPath.row;

答案 2 :(得分:7)

我更喜欢这样做

NSNumber *selRow = [[NSNumber alloc] initWithInteger:indexPath.row];

答案 3 :(得分:7)

Swift

    let section: Int = indexPath.section
    let row: Int = indexPath.row

答案 4 :(得分:1)

只需转换为int by,

NSIndexPath * path = ... //一些索引路径

int row =(int)path.row;

答案 5 :(得分:-1)

在swift:

  1. 将您的收藏视图与var:

    相关联

    @IBOutlet weak var collectionView:UICollectionView!

  2. prepareForSegue func中,您可以致电:

    var indexPath = collectionView.indexPathsForSelectedItems()