私は3つのボタンを作成し、通常の状態と選択された状態の背景画像を設定しました。ボタンをクリックすると、選択した状態として1つのイメージが変更されました。しかし、テーブルビューをスクロールすると、選択された画像は保持されません(前の選択されたセル)。つまり、通常の状態になります。選択状態を維持するには、iPhoneのUIButtonをクリックしますか?
私のコードは、
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
likeBtn = [UIButton buttonWithType:UIButtonTypeCustom];
UIImage *likeSelectedImage = [UIImage imageNamed:@"like.png"];
//set image as background for button in the normal state
[likeBtn setBackgroundImage:likeSelectedImage forState:UIControlStateNormal];
[likeBtn addTarget:self action:@selector(likeAction:) forControlEvents:UIControlEventTouchUpInside];
[cell.contentView addSubview:likeBtn];
}
マイボタンのアクションがSO私の問題は、私はテーブルビューのセルをスクロールすると、画像の以前に選択された状態が保持されていない、ある、
-(void) likeAction : (id) sender
{
UIImage *likeSelectedImg = [UIImage imageNamed:@"like-selected.png"];
UIImage *likeImg = [UIImage imageNamed:@"like.png"];
if ([sender isSelected]) {
[sender setImage:likeImg forState:UIControlStateNormal];
[sender setSelected:NO];
}else {
[sender setImage:likeSelectedImg forState:UIControlStateSelected];
[sender setSelected:YES];
}
}
です。 cellForRowAtIndexメソッドが繰り返し呼び出されたので、私はテーブルをスクロールしました。自動的に"[likeBtn setBackgroundImage:likeSelectedImage forState:UIControlStateNormal];"
と設定されます。この問題を避けるには? だから私を助けてください? ありがとう!
uは私はすべてのテーブルの行のために保留にすべてのボタンの状態をボタンを保存する方法を伝えることができますuの私はウルANSでパーとしても、コードを試してみたが、それは適切に動作していないとして、ハイテク私は同じ問題を抱えています。私は配列のボタン状態を保持する方法をしないでくださいコードでこれを行う方法を言うと、これは私がコードを保持するリンクですhttp://stackoverflow.com/questions/8294981/how-to-toggle-image-on-button-for -every-row-tableview cell-in-iphone – Rocky
私は最後の3日から試してみてくださいそれは私のために働いていない私はURのリンクを昨夜取得し、私は試してみませんか私はあなたが私を助けることを望む任意の解決策を得ていません – Rocky