2016-04-13 15 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' 
} 

クラス、メソッド、およびiVarsをチェックします。すべてはありますが、それらは使用できません。配列内のオブジェクトのiVarに値を代入する

ユーザー定義のデータフィールド数( 'Contants' appなど)を持つUIScrollViewが必要です。そこで、配列にロードしてスクロールビューに配置します。

しかし、私はメソッドを呼び出すことはできません。私はこれを試してみましたストラットのいくつかの種類(配列、辞書など)

使用したい:

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

をしかし、それは、配列内のオブジェクトに格納していないようです。私は配列がオブジェクトへのポインタを格納していたと思って、textView1はオブジェクトへのポインタになるので、 '.text'の値を同じオブジェクトに保存する必要があります。あなたがしようとした何

答えて

1

は私には少し不明瞭なようだが、これは動作するはずです:

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

私はデータへのデータストアからそれらをロードできるように、テキストフィールドとラベルのリストをロードしようとしていますスクロールするエントリページ。 textFieldの数が変更されるため、配列を使用します。ポインタ 't'は処理中にそこにはありません。これは、データを入力するフィールドがたくさんあるiPhoneの「連絡先」アプリのようなものです。 – KarlJay

+0

あなたのコードはあくまでも例ですか? – Fonix

+0

よくある問題は 'dataArray [i] .text =" here ";' NSArraysはNSObject型のオブジェクトしか格納しないので、 'dataArray [i]'はあなたに.textプロパティを持たないNSObjectを返します。最初にdataArray [i]をUITextFieldにキャストし、次に.textにアクセスする必要があります(重複した質問で説明されています)。 – Fonix

関連する問題