1
Unity 5.3のforeachループ内のいくつかのボタンにイベントリスナーを追加します。AddEventlistner、クリックされたボタンへのオブジェクト参照を取得する
クリックされたボタンへのボタン参照を取得するにはどうすればよいですか?そこで、levelBtnClicked関数でボタンのプロパティを確認できます。
Unity 5.3のforeachループ内のいくつかのボタンにイベントリスナーを追加します。AddEventlistner、クリックされたボタンへのオブジェクト参照を取得する
クリックされたボタンへのボタン参照を取得するにはどうすればよいですか?そこで、levelBtnClicked関数でボタンのプロパティを確認できます。
levelBtnClicked
関数がパラメータとしてButton
を取るループ中のパラメータにそれぞれButton
インスタンスにおけるその後パスを作ります。
Button[] buttons;
void Start()
{
foreach (Button btn in buttons)
{
btn.onClick.AddListener(() => levelBtnClicked(btn));
}
}
void levelBtnClicked(Button buttonClicked)
{
buttonClicked.image = ......
buttonClicked.name....
Debug.Log("Button Clicked: "+buttonClicked.name);
}
これは、私が試した最初のことでしたが、動作しませんでした。しかし、私はそれを理解した。 foreachループをforループに単純に変更します。 ありがとう:) –
問題はありません。これを試してみませんでしたが、それはうまくいきませんでしたか? – Programmer
はい、試しました。なぜそれがうまくいかなかったのか分かりません...しかし、私がforループを使用するように変更したとき、どうにかしてうまく動作しました:p –