質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Q&A

解決済

1回答

1894閲覧

Unityでアウトレット接続ができない

kabotya3

総合スコア32

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

0グッド

0クリップ

投稿2022/06/28 03:27

前提

Unityで特定のキーを押したら、Unity上のObject Textの表示が変わるプログラムを作っています。コードの作成も済んで、スクリプトのアタッチも終わりました。今、Inspector画面にScriptのComponentがあり、その傘下にpublicで宣言したcsファイルのText変数が表示されており、None(text)と表示されています。ここでアウトレット接続をしたいのですがドロップアンドドロップをしても何も反応しません。
ほぼほぼ以下のサイトと同じように作っています。
https://freesworder.net/unity-text-change/
上記サイトでのStep4まで出来ており、Step5が出来ない状況です。

またこの状況で実行すると、当然textがNullですというエラーが出ます。

実現したいこと

アウトレット接続し、スクリプト内のText変数に代入したい。

発生している問題・エラーメッセージ

ドラッグアンドドロップで反応しない問題。右にあるボタンを押しても選択候補としてNoneしか出てこないです。

試したこと

  • 色々調べてみると、アウトレット接続してCan't add 〜エラーが出たという文献は多いのですが、私の場合だとエラーすら出ず全く反応しないという状況です。Consoleも見張っていましたが何も表示はありません。

  • ヒエラルキーウィンドウからドラッグアンドドロップしても、プロジェクトウィンドウからドラッグアンドドロップしても反応しません。

補足情報(FW/ツールのバージョンなど)

Unityのバージョン: 2022.1.3f1
環境:MacBookPro M1チップ

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

Unityのバージョンが2022.1.3f1という事なので、uGUIではなく、TextMeshProのテキストではないでしょうか?
UIの追加メニュー

この場合ですと、以下のusingの追加と、

c#

1//using UnityEngine.UI; Textクラスではなくなりました 2using TMPro;

以下のフィールドの指定となります
※他のスクリプトからC#のコードでアクセスする必要がない場合はpublicではなくprivate(省略可)で属性の[SerializeField]を指定するようにした方が宜しいかと思います

c#

1//public Text text; 非推奨から実質廃止に近い状態になりました(旧バージョンで作ったプロジェクトを新しいUnityエディタに切り替える場合はもう暫く使えるかもしれませんがいつ使えなくなるか分からないので早いうちに置き換えた方が良いでしょう) 2[SerializeField] private TMP_Text text;

テキスト系コントロールですが、uGUIからTextMeshProに置き換わり、2019あたりだと両方から選択できましたがそこそこ新しいバージョンだとuGUIはメニューから消えてしまいました
なので古い記事だとこの辺りの読み替えが必要となるようです
また、フォント周りが日本人には手間ですがコントロールの機能としてはかなり拡張されているらしいのでTextMeshProの使い方を必要に応じて検索して使用するのが良いでしょう。

投稿2022/06/28 04:52

len_souko

総合スコア1348

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kabotya3

2022/06/28 09:57

回答ありがとうございます。回答していただいた方法できちんとアウトレット接続が出来ました。 私の調べ方が悪かったのか、参照した文献は全部Textを使うものばかりでTextMeshProは全く目にしませんでした。(質問文にあるURLも2017と古いですね。。。) ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問