前提・実現したいこと
scrollViewでPrefabを作らず実行する方法を教えて頂けませんか。
参考URLではPrefabを作って実行していて期待する動きなのですが,
image,textなど修正したくてもPrefabを後から修正する方法が解らないためです。
該当のソースコード
unity
1 2 void Start() 3 { 4 for (int i = 0; i < 15; i++) 5 { 6 var item = GameObject.Instantiate(prefab) as RectTransform; 7 item.SetParent(transform, false); 8 9 var text = item.GetComponentInChildren<Text>(); 10 text.text = "item:" + i.ToString(); 11 } 12 }
ランタイム中に生成する必要が無いのであればContentの子要素として最初からシーン上に置いておけば良いのでは無いでしょうか?
寧ろそうしない理由を教えて欲しいです。
サンプルでは
var item = GameObject.Instantiate(prefab) as RectTransform;
この記述をprefabではない記述が知りたいのです。
フィールド変数のprefabを好きなもの
例えばprefab2に書き換えて
そこもprefab2に変えれば解決でしょう
やりたい事はそうじゃないと察しつつも、質問がそうなのでこれが答えです。
image,textを後から修正する方法が解らないのであればそれを聞いた方が早いのではないでしょうか。
Prefabを使わずにオブジェクトを生成していくのはizmktrさんの書かれている様な方法で可能ですが、
image,textを参照する方法が理解出来ていないのであれば最終的には同様な問題が発生するかと思います。
prefabを作らないでContentのprefab内にNodeをドラッグしたら解決しました。
回答2件
あなたの回答
tips
プレビュー