問題タブ [unity3d-ui]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
unity3d - ScrollRect は、コンテンツから子要素を削除/非アクティブ化した後、正規化された位置をクランプするときに位置を正しく更新しません
これは、解決策が見つからなかった後、自分で解決しなければならなかった問題です。
この問題は、ScrollRect のコンテンツから GameObject 要素を削除した後、ユーザーが再び移動を開始するまで、正規化された位置をクランプしないことでした。これにより、ScrollRect が最後の要素を表示し、親からの最後の要素を非アクティブ化したときに、空のスペースが表示される可能性があります。
- ユーザーが ScrollRect コンテンツを操作するまで、正規化された位置の値は更新されませんでした。
- 正規化された位置を手動で設定した後、要素を非アクティブ化した後、まだ更新されていない古い値を操作していたため、機能しませんでした (理由については上記を参照してください)。
c# - GUI ボタンの連続タッチを検出する
以下のコードは、GUI ボタン OnClick の下で実行されるバックスペース ボタン機能を実装するために使用します。
正常に機能し、ボタンを 1 回クリックして入力テキストを 1 つずつ削除します。問題は、ユーザーがGUIボタンを連続して押すと、この関数を連続して実行したいということですキーボードのバックスペースボタンと同じですが、残念ながらこれはonClickが1回しか機能しないため、1回しか機能しません。目的のコードを実行するために、GUI の連続タッチを検出するために利用できるイベントまたはトリックはありますか?
unity3d - Unity3D、Unity.UI の Panel から PNG をビルドしますか?
Unity.UI について考えてみてくださいCanvas
。
Panel
そのキャンバスの典型を想像してみてください。たまたまいくつかの画像、おそらくいくつかのテキストなどが含まれているとします。
そのパネル (パネルのみ) をスクリーンショット (Texture2D または PNG) に変換できると非常に便利です。
私が考えることができる唯一のことは、画面上の問題ReadPixels
の領域を使用して把握することです(実際にはかなりトリッキーです)。Panel
これは、パネルがたまたま正方形で、斜めに回転していない場合にのみ機能します。
1 つのパネル、または少なくとも 1 つのキャンバス全体をレンダリングする方法があるはずだと思いますか? 何も見つかりません。
この例では、ピンクの Panel を PNG 画像にします。ああ。
(もちろん、1 つの Panel ではなく、単に「Canvas 全体」を処理するソリューションを誰かが持っている場合は、もちろんそれも立派です。)
c# - 目に見えない透明なボタンを機能させるには?
Unity フォーラムや Q&A サイトのいくつかの回答を見ると、ボタンに関連付けられている画像を削除すると機能しないため、非表示のボタンを作成する方法の回答が機能しません。
ボタンを実際に機能させながら、これを回避して非表示のプロパティを保持するにはどうすればよいでしょうか?
c# - Unity3D UI、アイテムをドラッグする位置の計算?
最近では、Unity で UI 要素をドラッグするのは非常に簡単です。いくつかの UI アイテムを作成します。Component -> Event -> Event Triggerを追加します。以下のスクリプトにドロップします。4 つの明らかなトリガーをクリックして追加します。あなたは終わった。
でも。
ポインター座標とUI 座標(RectTransform などで見られるように)の関係に完全に迷っています。
以下: UI パネルを指の下で正しく移動するにはDragIt
どうすればよいでしょうか?
1 つの大きなパネルがあり、10 個の UIButtonDragster
がボタン上にあるとします。RectTransform 座標とマウス ポインターの関係は何ですか...
つまり、下の DragIt() でボタンの 1 つを移動するにはどうすればよいでしょうか。
c# - UIを使わずにUnityのボタン?
Unity で UI レイヤーを使用せずに単純な 2D ボタンを作成する方法はありますか。ボタンがたくさんあるゲームがあり、UI でアプリ全体を作成したくありません。スイッチ、スライダーなど、さらにいくつかのコントロールも歓迎します。
PS。NGUI を見ましたが、今のところ好きではありません。他に何か?
unity3d - HorizontalLayoutGroup などに従って、Unity3D の「FlowLayoutGroup」を修正
Unity UI で通常の左フラッシュ フローが必要だとします。例:
実際、この質問に答えるために、私はすでにフラッシュレフトフローを「難しい方法で」達成しました。Unityの自動レイアウトで「行の垂直グループ」を設定し、FattieFlowを最上位にアタッチし、
FattieFlow
フラッシュ左に完全にリフローします(行を操作するのは難しい方法です)。スクリプト、デモなどは次のとおりです。難しい方法です。
しかし、それは悪い解決策です。
理想的には、 UI.HorizontalLayoutGroupとUI.VerticalLayoutGroupから始めて 、作成できるはずです
FlowLayoutGroup
これは、左にフラッシュしてブロックにレイアウトします。(そして実際には、必要に応じてブロックを展開する必要があります...HorizontalLayoutGroup
動作とまったく同じです)。
そこから始めてHorizontalOrVerticalLayoutGroup
、そこから作業する必要があるようです。
これをどのように行うのですか (まだ存在しない場合)?