問題は、2 つの別個のソース ファイルがあることです。最初のソース ファイル:
#if UNITY_IPHONE
using iTouch = UnityEngine.Touch;
public class iTouchInput : MonoBehaviour {
public static iTouch[] getTouches() {
return Input.touches;
}
}
#else
public struct iTouch {
public int fingerId;
public Vector2 position;
public Vector2 deltaPosition;
public float deltaTime;
public int tapCount;
public iTouchPhase phase;
}
public class iTouchInput : MonoBehaviour {
private static iTouch[] touches;
public static iTouch[] getTouches() {
return touches;
}
}
#endif
そのため、スクリプトが iOS プラットフォームで実行されている場合は事前定義されたクラスのエイリアスを使用し、それ以外の場合は独自の実装を使用することを目的としています。問題は、そのような構造を別のファイルで使用したい場合、コードを複製してどこにでも書き込む必要があることです
#if UNITY_IPHONE
using iTouch = UnityEngine.Touch;
#endif
これを回避する方法はありますか?