2016-07-02 11 views
-2

私は以下のコードを実行するとき、私は継続的に次のエラーを取得する:NullReferenceExceptionエラー?

とNullReferenceException:オブジェクト参照

void Update() 
{ 
    if(GameObject.FindWithTag("Me").GetComponent<Text>() != null) 
    { 
     //do something 
    } 
} 

はなぜならば、このエラーを取得しています オブジェクトのインスタンスに設定されていませんが私は、テキストコンポーネントがでないことを確認しています。nullですか?代わりに私は何を書くべきですか?

ゲームのある時点で、"Me"はnullであり、エラーは表示されません。

答えて

1

問題は、GameObjectに「Me」タグが付いたオブジェクトがないことです。だからGameObject.FindWithTag("Me")がnullを返し、GetComponent<Text>()をnullで呼び出すとNullReferenceExceptionがスローされます。代わりにこれを試してください:

var obj = GameObject.FindWithTag("Me"); 
if(obj != null) 
{ 
    var cmp = obj.GetComponent<Text>(); 
    if (cmp != null) 
    { 
      //do what you want 
    } 
} 
+0

@nopeflow fixed – dotctor

関連する問題