【解決】SliderにおけるNullReferenceExceptionの対処法
Q&A
Closed
UnityでNullReferenceExceptionに困らされています
Unityでスライダーに変数を代入するシステムを開発中です。
スライダーに関連する値をいじろうとするとすぐNullReferenceExceptionです。
解決方法を教えて下さい。
発生している問題・エラー
NyuusannControll.Start () (at Assets/Scripts/NyuusannControll.cs:13)
NyuusannControll.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class NyuusannControll : MonoBehaviour{
public static float Nyuusann = 100f ;
public float Stamina = 100f;
Slider nyuusann;
void Start()
{
Slider nyuusann = GetComponent<Slider>();
nyuusann.maxValue = Stamina;
//NullReferenceExceptionが二つ発生します
}
void Update()
{
//乳酸値が限界を超えないようにするためです。
if (Nyuusann >= 100)
{
Nyuusann = 100;
}
if (Nyuusann <= 0)
{
Nyuusann = 0;
}
Slider nyuusann = GetComponent<Slider>();
nyuusann.value = Nyuusann;
//NullReferenceExceptionが六つ発生します。
}
}
自分で試したこと
Nyuusannをfloatにする。
Sliderに変数以外を代入する(NullReferenceException)
思い出せる限りではこれですべてです。
もしかしたらほかにも試していたかもしれません。
原因はここに書いていなかった別のスクリプトの継承の方法でした。
使用について理解が足りていないところがあったようです。
次回の質問時には、継承したクラス等も明記することを心がけます。
ありがとうございました。