文字列の配列を表示するtableViewがあります。しかし、私は(0または1)に値を持つ2番目の配列を持っています。0 の場合は 1 つの画像とテキストを黒で表示したいが、1 の場合は 2 番目の画像とテキストを緑で表示したい。
パースからダウンロードした配列。それは働いています。しかし、セルをクリックしても何も起こらないので、1か0かを確認する必要があるコードを以下に表示します。
if ([NSNumber numberWithInt:0] == [oneOrZeroArray objectAtIndex:indexPath.row])
{
cell.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;
cell.textLabel.textColor = [UIColor darkTextColor];
cell.editingAccessoryType = UITableViewCellAccessoryDetailDisclosureButton;
cell.imageView.image = [UIImage imageNamed:@"noCheckMark.png"];
[oneOrZeroArray replaceObjectAtIndex:indexPath.row withObject:[NSNumber numberWithInt:1]];
}
else if ([NSNumber numberWithInt:1] == [oneOrZeroArray objectAtIndex:indexPath.row])
{
cell.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;
cell.textLabel.textColor = [UIColor greenColor];
cell.editingAccessoryType = UITableViewCellAccessoryDetailDisclosureButton;
cell.imageView.image = [UIImage imageNamed:@"checkMark.png"];
[oneOrZeroArray replaceObjectAtIndex:indexPath.row withObject:[NSNumber numberWithInt:0]];
}
セルをクリックすると、アプリケーションが解析からデータをダウンロードしたときの数値が NSLog に表示されますが、配列はクリックしても更新されません。
(後の問題は、セルをクリックしたときに新しい配列項目をアップロードすることです)
エディッド:
わかりましたので、didSelectRowAtIndexPath のコードを使用すると、少しは機能します。
画像をロックすると、セルは何かを実行していますが、正しくありません。あるアイテムをクリックすると、他のアイテムが更新され、そのようにジャンプします。写真で説明しているセルをクリックするだけで、他のセルは押しません。
編集2: 私の側から失敗します...
私が移動した場合: [oneOrZeroArray replaceObjectAtIndex:indexPath.row withObject:[NSNumber numberWithInt:0]];
didSelectRowAtIndexPath に移動すると機能します =)。