私はプロジェクトを行っていますが、すべてが標準アセットから外れています。だから私はこのすべてのフォルダとアイテムを標準資産フォルダに移動する必要があります。すべてのファイルとフォルダを標準アセットに移動すると、null参照エラーが返されます。ファイルを標準資産に移動した後のヌルエラー
プロジェクトに名前空間があります。この名前空間にアクセスしようとすると、nullエラーが発生します。ここで
は私の名前空間コード
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Assets.Scripts
{
public interface IInputDetector
{
InputDirection? DetectInputDirection();
}
public enum InputDirection
{
Left, Right, Top, Bottom
}
}
、ここでそれは私にエラーを与えるUpdateメソッドでは、それは
IInputDetector inputDetector = null;
とstartメソッドで
void Start(){
inputDetector = GetComponent<IInputDetector>();
}
アクセスを取得するためのコードです
var inputDirection = inputDetector.DetectInputDirection(); // Line 222
エラーは次のようである..
とNullReferenceException:オブジェクト参照オブジェクト ControllerMovement.DetectJumpOrSwipeLeftRight()のインスタンスに設定されていない(資産/スクリプト/ ControllerMovement.cs時:222) ControllerMovement.Update() (資産/スクリプト/ ControllerMovement.csで:106)
ライン22は、VARラインより上..です
と106行目は、私がupdate()メソッドで呼び出しています方法です。ライン222で
void Update(){
DetectJumpOrSwipeLeftRight(); // line 106
}
DetectJumpOrSwipeLeftRightが呼び出されたときに、ControllerMovement型のオブジェクトがnullであるように見えます。しかし、コードスニペットは、なぜこれが当てはまるかを確認するには不十分です。 detectInputs()が何をしているかは、エラーが起きていることを少なくとも示す必要があります。 – Nebr
ohh申し訳ありませんが、私はDetectJumpOrSwipeLeftRight()を呼び出しています。 Update()で更新します。 – mahesh
ContollerMovementが私のクラス名です。 "var inputDirection = inputDetector.DetectInputDirection(); // Line 222" @Nebr – mahesh