FC2ブログ
    05 «1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.» 07

    ハルシオンシステムの気ままBlog

    株式会社ハルシオンシステムのメンバーが送る、UnityやらJavaやらの技術的話題から、自社開発のアプリの宣伝とかとかのブログです。ほんと気ままにいきたいと思います。更新日は毎週 月 木でっす!

     

    【ハルシオンブログ】Unity(uGUI)でパスワードの入力チェックみたいなのを作ってみた。 

    こんにちは。
    先週月曜に歯医者だったのに、完全に忘れてました。坂内っす。
    ついに今週末デジゲー2022っすね。
    遊びにいってこよーっと!

    こちらのブログ毎日100人くらい見に来てくれてるらしいっす。
    ありがとうございます。
    常にネタ切れで中身うっすいブログですが、少しでもゲーム開発とかにお役に立てれば幸いです。
    という体で今日もなんか書こうと思います。



    さてさて、UnityのUIで、パスワードを入力するときにリアルタイムで文字列チェックする機能。

    こんなのを作ってみます。

    今回はTMPでInputField等を作成。



    コードはこちら

    [Blog20221107.cs]

    using UnityEngine;
    using TMPro;

    public class Blog20221107 : MonoBehaviour
    {
    [SerializeField] TMP_InputField inputFPass;
    [SerializeField] TMP_Text lblMark1;
    [SerializeField] TMP_Text lblMark2;

    void Start()
    {
    inputFPass.onValueChanged.AddListener(ChangeText);
    }

    void ChangeText(string str) {
    CheckLowerUpperCase(str);
    CheckLength(str);
    }

    void CheckLowerUpperCase(string str) {
    bool isUpper = false, isLower = false;
    for (int i = 0; i < str.Length; i++) {
    if (char.IsUpper(str[i])) {
    isUpper = true;
    }
    if (isUpper) {
    break;
    }
    }
    for (int i = 0; i < str.Length; i++) {
    if (char.IsLower(str[i])) {
    isLower = true;
    }
    if (isLower) {
    break;
    }
    }
    if (isUpper && isLower) {
    lblMark1.text = "〇";
    } else {
    lblMark1.text = "×";
    }
    }

    void CheckLength(string str) {
    if (str.Length >= 8) {
    lblMark2.text = "〇";
    } else {
    lblMark2.text = "×";
    }
    }
    }



    InputFieldのonValueChangedで、チェックをする感じです。
    CheckLowerUpperCaseでは大文字が1文字でも入っているか?小文字が1文字でも入っているかのチェックをします。
    CheckLengthでは文字数のチェックです。

    今回は簡単な文字列のチェックですが、ここをもっと厳格なチェックにすればいいんじゃないかな?
    onValueChangedでチェックをしているので、文字を書く度にチェックが入ります。

    と、こんな感じでTMPではチェックができます。

    TMPではなく、uGUIのInputFieldの場合でも同じくonValueChangedで文字の変更イベントが取れるのでそのまま使えますね。

    ということで、文字を入力するたびに文字列のチェックを行ったりする方法でした。

    では、あでゅ~ノシ

    Category: 開発日記(Unity)

    tb 0 : cm 0   

    コメント

    コメントの投稿

    Secret

    トラックバック

    トラックバックURL
    →http://halcyonsystemblog.jp/tb.php/931-dc4bd38b
    この記事にトラックバックする(FC2ブログユーザー)