2016-04-13 21 views
0
NSMutableArray *dataArray = [NSMutableArray array]; 
for (int i = 0; i<5; i++){ 
    [dataArray addObject:[UITextView new]]; 
    dataArray[i].text = "here"; 
       ^Property 'text' not found on object of type 'id' 
} 

Sınıfı, yöntemleri ve iVars'ı kontrol ederim ... her şey var, ama onları kullanamıyorum.Bir dizinin içindeki bir nesnenin iVarına bir değer atama

Kullanıcı tanımlı veri alanı sayısıyla ('Contants' uygulaması gibi) bir UIScrollView istiyorum. Bu yüzden onları bir diziye yükleyip onları kaydırma görünümüne yerleştiriyorum. Ancak, yöntemleri arayamıyorum. Bunu denedim payanda çeşit (dizi dict, vb ...)

kullanmak istiyorum:

textView1 = dataArray[i]; 
textView1.text = @"######### Here I am ##########"; 

Ama bu dizide içindeki nesneye saklamak için görünmüyor. Dizinin nesneye bir işaretçi kaydettiğini ve textView1 nesnesine bir işaretçi olacağını düşündüm, bu yüzden '.text' değerini aynı nesneye depolamalı. Eğer çalıştı Ne

cevap

1

bana biraz belirsiz gibi görünüyor, ama bu çalışması gerekir:

NSMutableArray *dataArray = [NSMutableArray array]; 
for (int i = 0; i<5; i++){ 
    UITextView *t = [UITextView new]; 
    [dataArray addObject:t]; 
    t.text = @"here"; 
} 
+0

Bir verilerine bir veri deposundan onları yükleyebilirsiniz böylece TextField ve etiketlerin listesini yüklemeye çalışıyorum kaydırılan giriş sayfası. Diziyi kullanıyorum çünkü textFields sayısı değişecek. İşlenirken 't' işaretçisi orada olmayacak. Bu, iPhone'dan veri girmek için birçok alana sahip 'Kişiler' uygulaması gibidir. – KarlJay

+0

oh Yukarıdaki kod sadece bir örnektir? – Fonix

+0

da genel sorun şu şekildedir: dataArray [i] .text = "burada"; 'NSArrays yalnızca NSObject türünde nesneler depoladığından, 'dataArray [i]' dosyası size .text özelliğine sahip olmayan bir NSObject döndürüyor. dataArray [i] 'i önce bir UITextField'a dökmeniz, daha sonra .text dosyasına (duplicate soruda açıklanmaktadır) erişmeniz gerekiyor. – Fonix

İlgili konular