LoginSignup
1
3

More than 3 years have passed since last update.

【Unity】引数を使ったボタンで好きな数字をテキストに表示する

Last updated at Posted at 2020-04-20

環境

Unity 2019.3.7f1

はじめに

同じような処理のボタンが複数ある場合、
引数を使ったボタンでコードを簡略化できます。

こちらは一つの関数で処理しています。

方法

1.ボタンに割り当てる関数で引数を宣言する。
2.ボタン側で引数の入力値を設定

具体例

1~9の引数をそれぞれ設定したボタンを作成し、
ボタンを押すとテキストに
設定した数値が表示されるようにしてみましょう。

1.前準備
・ボタンを9つ作成
【Unity】オブジェクトを等間隔で配置する方法 Grid Layout Group
https://qiita.com/Maru60014236/items/56d2d53e0a80f1e65e94
で作ったボタン群を使います。
(内容:ボタン並べただけ)
image.png

・空のオブジェクトを作成
・新規スクリプト作成
・空のオブジェクトに作成したスクリプトを割り当てる

・テキストを作成
テキストは、見やすくするためこのように設定
・フォントサイズ50
・水平オーバーフロー Overflor
・垂直オーバーフロー Overflor
image.png

2.ボタンのテキスト変更
ボタンのテキストを1~9に変更。
テキストフォントサイズを50にする。
image.png

3.ボタンに割り当てる関数を作成
このようにコードを書きます。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;//UIを使うため追加

public class test : MonoBehaviour
{
    [SerializeField] private Text suuji_text;//Text型の変数suuji_textを宣言

    void Start()
    {        
    }

    //ボタンを押したら実行する関数 実行するためにはボタンへ関数登録が必要
    //int型の引数numberを宣言
    public void Push_Button(int number)
    {
        suuji_text.text =""+ number;//suuji_textに引数の数値を代入
    }
}

4.ボタンに関数割り当て
ボタンのクリック時のところに空のオブジェクトを割り当て
image.png

先程作成した関数を選択
image.png

 
数値入力欄が出現するので、
ここにボタンテキストに対応した数値を入力
image.png

それぞれのボタンで関数割り当て&数値入力を行ってください。

5.空のオブジェクトのスクリプトに前準備で作成したテキストをアタッチ
image.png

実行

おわりに

引数を使った関数でコードスッキリ!!

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3