0

UILabelのサブクラスであるWishInfoTextViewを持つカスタムUITableViewCellがあります。

 static NSString *CellIdentifier = @"Cell";
 NSMutableDictionary* item = [myWishes objectAtIndex: indexPath.row];

WishTableViewCell* cell = [tableView dequeueReusableCellWithIdentifier: CellIdentifier];
if( cell == nil ) {
    cell = [[WishTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
    [cell setSelectionStyle: UITableViewCellEditingStyleNone];
    [cell setWishInfo: item];
}    

WishInfoTextView* infoText = (WishInfoTextView*)[cell viewWithTag: kTableInfoText];
infoText.text = [item objectForKey:@"name"];

NSLog(@"\nTaggedText: %@\nNormalText: %@", infoText.wishName, [item objectForKey:@"name"]);

唯一の問題は、セルが重複していることです。タグの設定について何か読みました。しかし、彼のタグで自分のレーベルにアクセスしても、何も変わりません。

4

1 に答える 1

1

objectForKey@"name"セルが必要なときはいつでも使用しています。そのため、常に同じものが得られます。文字列の配列がある場合は、[arrayName objectAtIndex:indexPath.row]実際に異なる値を取得するために次のようなものを使用します。

たとえば、使用する配列からテーブルにデータを入力するとき

NSArray *nameSection = [appD.data objectForKey:key];
cell.textLabel.text = [nameSection objectAtIndex:indexPath.row];

appD.dataによって取得されます

NSString *DataPath = [Path stringByAppendingPathComponent:@"Primary.plist"];
NSDictionary *data = [[NSDictionary alloc] initWithContentsOfFile:DataPath];

どこPrimary.plistですか

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>First type</key>
    <array>
        <string>object1</string>
        <string>object2</string>
        <string>object3</string>
    </array>
    <key>Second type</key>
    <array>
        <string>thing1</string>
        <string>thing2</string>
        <string>thing3</string>
    </array>
</dict>
</plist>
于 2012-07-03T14:58:59.737 に答える