Bir ListViewController, bir DetailViewController ve bir DüzenlemeControlleri ile düzenlenmiş bir Çekirdek Verileri uygulamasına sahibim. ListViewController, ben bir onay kutusu ilişkin bir grafik var ve benim seçim kalıcı kılmak, böylece benWindowsController'da temel verileri düzenleyebilir
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
yılında satır seçerek iki görüntü değişimi yapar o ListViewController gelen Çekirdek Veri kaydını düzenlemek mümkün mü ? Sadece doğrudan yanlış olana geçiş yapacak olan değeri seçmek, düzenlemek ve kaydetmek için sözdizimini çalışamıyorum.
jon
Hızlı yanıt için teşekkürler! Cevap 1'den sonraki ek bilgiler. Bu uygulamayı CoreData Books örneğinde modelliyorum. Düğme kullanmıyorum, ancak kontrol edilen ve işaretlenmemiş bir onay kutusu oluşturmak için iki görüntü kullanıyorum. Varlığım için bir boolean "check" ekledim, üstbilgi dosyasını yeniden oluşturdum ve header dosyasını ListViewController'ımma ekledim. İşte datamodel başlık dosyasının basitleştirilmiş bir sürümüdür.
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:indexPath];
NSManagedObject *entityObject = [self.fetchedResultsController objectAtIndexPath:indexPath];
if (![entityObject.check boolValue]) {
entityObject.check = [NSNumber numberWithBool:YES];
cell.imageView.image = [UIImage imageNamed:@"check.png"];
}
else {
entityObject.check= [NSNumber numberWithBool:NO];
cell.imageView.image = [UIImage imageNamed:@"uncheck.png"];
}
Ancak bu "şey değil bir yapıya veya birliktelik 'kontrol' üyesi için İsteği" Bana hata veriyor:
@interface Patient : NSManagedObject
{
}
@property (nonatomic, retain) NSString * location;
@property (nonatomic, retain) NSNumber * check;
@property (nonatomic, retain) NSString * lastName;
@end
Ve burada kod benim değişikliktir. Yeni özniteliğin bir boolean olduğunu ve üstbilgi dosyasının ListViewController'a aktarıldığını doğruladım. Düşüncesi olan var mı?
Son olarak, bu kod veritabanına entityObject.check kaydetme gereksinimini ortadan kaldırıyor mu? Tekrar teşekkürler.
özel nesne modeli sınıfları kendi ilan etmedik olduğundan, almak ve sırasıyla aşağıdaki kullanarak onların değerlerini ayarlayabilirsiniz: kullanılmasını ayarlamak için [EntityObject SetValue: [NSNumber numberWithBool: EVET] forKey: @ "check" ] ve [entityValue valueForKey: @ "kontrol edin"] – Rog
Son satırdaki değerValue değerini okuduğu için üzgünüm, bunu çözmediyseniz, entityObject olmalıdır. – Rog
iPhone'da onay kutusu düğmelerine dikkat etmek istersiniz. Kullanıcılar, hata oluşturmaya iki kez dokunma eğilimindedir. Bu nedenle, slayt anahtarı kontrolü, kullanıcıların ikili durumları kolayca ve hızlı bir şekilde ayarlayabilmeleri için oluşturulmuştur. – TechZen