2011-07-17 17 views
0

選択したインデックスを整数として保存するだけですが、下のコードは奇妙な値を返し、インデックスを整数として取得できます。ここで何が間違っていますか?iPhoneは選択できませんindexrow

NSInteger *selectedRow; 

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { 

self.selectedRow=(NSInteger *)indexPath.row; 
} 
+1

'selectedRow'を' NSInteger * 'ではなく 'NSInteger'にして、キャストを削除します。 – albertamg

答えて

1

私はselectedRowは、オブジェクト型、int型(長い?)プリミティブの単なるtypedefではないNSInteger、であると仮定します。したがって、あなたはNSIntegerへのポインタをしたくない、あなたのキャスト(NSInteger*)を削除し、ちょうどままにしておきます:

self.selectedRow= indexPath.row; 
+0

、どのように文字列に変換できますか? NSString * val = [NSString stringWithFormat:@ "%d"、selectedRow]; did not work – Spring

+0

あなたはself.selectedRowで試しましたか? selectedRowのプロパティ宣言は何ですか? – thelaws

1

NSIntegerがオブジェクトではありません。あなたは間違った方法でそれをキャストしています。試してみてくださいself.selectedRow = indexPath.row;

関連する問題