2017-04-14 3 views
0

Ich habe einen Text erstellt und unter Text gibt es zwei Eingabefelder. dann habe ich ein prefabs von ihnen erstellt und instanziiert durch code. und es funktioniert, aber das Problem ist, dass das instanziierte Objekt leer ist und nichts zeigt, nur eine Box. Gibt es eine Lösung für das Problem, vor dem ich stehe?Text in Prefabs ist leer

Hier ist mein Code

using UnityEngine; 

using System.Collections; 

using System.Collections.Generic; 

public class SubmitButton : MonoBehaviour { 

public GameObject objects; 

public void Start() { 

//  Debug.Log ("ok"); 
} 

public void InstantiateButton() { 
objects.transform.position = new Vector3 (57.4f, 381.58f, 0f);  
Instantiate (Resources.Load ("Prefabs/Bupivacaine"), new Vector3 (57.4f, 
381.58f, 0f), Quaternion.identity); 
} 
} 
+0

ist Ihr Ordner Prefabs im Ordner Ressourcen? – Eddge

+0

ja sir ist wie Ressourcen Ordner dann Prefabs Ordner dann gibt es prefab –

Antwort

0

Um ein UI-Objekt zu instanziieren, müssen Sie sicherstellen, dass es ein untergeordnetes Kind eines Canvas ist. So sollten Sie Ihre Instanziieren Methode ändern:

Instantiate(Resources.Load("Prefabs/Bupivacaine"), GameObject.Find("parentNamehere").transform); 

geben Sie den Namen des Muttergameobject in „parentNamehere“ und denken Sie daran: es muss ein Kind von einer Leinwand oder die Leinwand selbst.

+1

Verwenden Sie 'GameObject.Find' nicht, wenn Sie es vermeiden können. Instantiate gibt das instanziierte Objekt zurück. – Draco18s

+0

danke Sir Es funktioniert, –

1

Wenn Sie versuchen, UI auf der Leinwand angezeigt werden, dann müssen Sie Ihre Mutterfertig auf die Leinwand.

go.transform.SetParent(canvasGo.transform, false); 
+0

ich habe meine prefab auf das Panel in der Leinwand –

+0

@MohassanNoon Versuch, localScale zu Vector.one – Iggy

+0

sir es zeigt nur die 4 rechteckigen Linien und seine 2d Anwendung, parented, und ich habe eine Schaltfläche erstellt, die Prefabs genant wird, wenn sie gedrückt wird, und jedes Prefab wird in scrollview sein, aber die Sache ist, ich konnte nicht weiter gehen, wenn das erste Prefab leer ist –