(1)下準備
- Create Emptyを作成
- 名前を「Age」に変更
(2)UIの作成
(ポイント)<Input Fieldの作成>
- Canvasの上で右クリック・・・>UI・・・>Input Fieldをクリック
- 名前を「Input_Birthday」に変更
- 入力エリアの大きさは自由に設定
- Input Fieldコンポーネントの中から「Content Type」を探す
- 「Integer Number」に変更(重要ポイント)
- これで、ユーザーは「整数」のみ入力できるようになります。
- Placeholderを選択
- Textエリアに『誕生日の参考例』を『8桁の数字』で書く(ポイント)・・・>例「19850307」
- Font Sizeは自由に変更
- Alignmentは中央寄せ
- Textを選択
- Font Sizeは自由に変更
- Alignmentは中央寄せ
- Colorは自由
*Buttonを含めて、残りのUIを作成ましょう。
(3)スクリプトの作成
- 新規にC#スクリプトの作成
- 名前を「Age」に変更
- 下記のコードを書いてチェック
using System.Collections; using System.Collections.Generic; using UnityEngine; // 追加 using System; using UnityEngine.UI; public class Age : MonoBehaviour { public GameObject input_birthday; private int age; public Text ageLabel; private string birthday; private int b; private DateTime today; private int t; public void OnCalculationButtonClicked() { // ①ユーザーが入力した誕生日データの処理 // 入力データは「string型」 birthday = input_birthday.GetComponent<InputField>().text; // 入力データを計算で使用できるように「int型」(8桁の数字)に変換する。 b = int.Parse(birthday); // ②今日の日時情報の取得 today = DateTime.Today; // 日時情報を計算で使用できるように「int型」(8桁の数字)に変換する。 t = int.Parse(today.ToString("yyyyMMdd")); // ③満年齢の計算式 age = (t - b) / 10000; // ④満年齢を画面に表示 ageLabel.text = "満年齢>" + age; } }
(4)設定
- Ageオブジェクトにスクリプトを追加
- 空欄を埋める。
- ボタンの設定(復習)
(5)ゲーム再生
- 設定が完了したらゲーム再生
- 誕生日を8桁の半角数字で入力
- 計算ボタンを押した瞬間、満年齢が表示されれば成功です。