ここ StackOverflow の真新しいポスター。私はここでしばらく読んで学んでいますが、いくつかの質問をして対話を始める必要があるので、私の問題のいくつかについて何か助けていただければ幸いです.
基本的に、cellForRowAtIndexPath の plist からデフォルト サウンドの tableView にリストを生成します。これにより、「x」と言う音のリストが生成され、それらの音の 1 つにデフォルトのチェックマーク アクセサリがセルに配置されます。「アクティブな」サウンド ファイルのインデックス値を格納する plist ファイルがあります。これが、生成された tableView に元のチェックマークを付ける方法です。したがって、以下のコードでは、ご覧のとおり、「アクティブな」サウンド インデックスの plist の値を読み込みますが、ユーザーが tableView を操作して新しいサウンドを選択すると、デフォルトのチェックマークを配置する必要があります。ビューから削除されました。他のすべては正常に機能しています。この単純な問題を解決できないようです。単純な構文の問題だと確信しています。どうすれば解決できるのかわかりません。解決策は1行または2行のコードであり、私の鼻の下にあると確信しています。事前に助けてくれてありがとう。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
NSDictionary *dictionarySound = [NSDictionary dictionaryWithContentsOfFile:[self ActDataFilePath]];
NSNumber *defaultSoundIndex = [dictionarySound valueForKey:@"soundIndex"];
int theIntVal = [defaultSoundIndex integerValue];
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
//Everything below works just fine, checkmarks are removed and placed accordingly, sounds are played just fine. I just need help above in removing the default checkmark
if(self.checkedPath)
{
UITableViewCell *uncheckCell = [tableView cellForRowAtIndexPath:self.checkedPath];
uncheckCell.accessoryType = UITableViewCellAccessoryNone;
}
cell.accessoryType = UITableViewCellAccessoryCheckmark;
self.checkedPath = indexPath;
.......下の他のコードは、クリック時にサウンドを再生し、新しくアクティブになったサウンド名とインデックス値を plist に保存します。