RepeatButton は、ユーザーがボタンを押し続けるとアクションを繰り返し実行します。アクション、遅延、および間隔を定義します。ユーザーが RepeatButton を押すと、最初のアクションが開始される前に初期遅延があり、その後、指定された間隔で遅延が繰り返されます。
ノート: RepeatButton のスタイルは、通常のボタンと同じではありません。.unity-button USS クラスを適用して、通常のボタンのような見た目にできます。
RepeatButton は UXML で作成できますが、アクションロジックは C# で作成する必要があります。以下の C# の例では、長押ししたときにコンソールメッセージをログに記録する RepeatButton を作成します。
// The logging delays 100ms before starting and repeats every 50ms.
var repeatButton = new RepeatButton(() => { Debug.Log("Button being pressed"); }, 100, 50);
repeatButton.text = "Press and hold me";
// Apply the ".unity-button" USS class to make the RepeatButton look like a regular Button.
repeatButton.AddToClassList("unity-button");
C# クラス: RepeatButton
名前空間: UnityEngine.UIElements
基本クラス: TextElement
この要素は基本クラスから以下の属性を継承します。
| 名前 | 型 | 説明 |
|---|---|---|
binding-path |
string |
バインドするターゲットプロパティのパス。 |
display-tooltip-when-elided |
boolean |
true の場合、ツールチップは省略されたテキストの完全なバージョンを表示し、以前にツールチップが提供されていた場合は、それを上書きします。 |
emoji-fallback-support |
boolean |
テキストのレンダリング時にシステムが絵文字を検索する順序を指定します。この設定を有効にすると、グローバルな絵文字フォールバックリストが最初に検索されて、Unicode 14.0 標準で絵文字として定義されている文字が検索されます。 |
enable-rich-text |
boolean |
false の場合、リッチテキストタグは解析されません。 |
focusable |
boolean |
要素がフォーカス可能である場合は true。 |
parse-escape-sequences |
boolean |
エスケープシーケンスをそのまま表示するか、それが表す文字に置き換えて表示するかを指定します。 |
tabindex |
int |
フォーカスリング内でフォーカス可能なものをソートするために使用される整数。0 以上の値に設定する必要があります。 |
text |
string |
表示されるテキスト。 この値を変更すると、暗示的に INotifyValueChanged_1.value セッターが呼び出され、文字列型の ChangeEvent_1 が発生します。 |
この要素は VisualElement から以下の属性も継承します。
| 名前 | 型 | 説明 |
|---|---|---|
content-container |
string |
子要素が追加されますが、通常は子要素は要素自体と同じです。 |
data-source |
Object |
継承されたデータソースをオーバーライドするこの VisualElement にデータソースを割り当てます。このデータソースはすべての子に継承されます。 |
data-source-path |
string |
データソースから値へのパス。 |
data-source-type |
System.Type |
この VisualElement に割り当て可能なデータソースのタイプ。 この情報は、設計時に有効なデータソースを指定できない場合に、データソースパスフィールドを補完するヒントとして UI Builder でのみ使用されます。 |
language-direction |
UIElements.LanguageDirection |
要素のテキストの向きを示します。値は要素の子に伝播されます。 languageDirection を RTL に設定すると、テキストの反転と改行/折り返しの適切な処理による、右から左へ (RTL) の基本サポートが追加されます。ただし、包括的な RTL サポートは提供されません。これには、文字の並べ替えを含むテキストシェーピングと OpenType フォント機能のサポートが必要になるためです。将来のアップデートでは、言語、スクリプト、フォント機能の仕様を処理するための追加の API を含む、包括的な RTL サポートが予定されています。 このプロパティの RTL 機能を拡張するには、Unity Asset Store で入手可能なサードパーティ製のプラグインを探し、 ITextElementExperimentalFeatures.renderedText を利用してください。 |
name |
string |
この VisualElement の名前。 このプロパティを使用して、特定の要素を対象とする USS セレクターを記述します。要素には一意の名前を付けるのが標準的です。 |
picking-mode |
UIElements.PickingMode |
mouseEvent または IPanel.Pick クエリの間にこの要素を選択 (ピック) できるかどうかを決定します。 |
style |
string |
VisualElement スタイルの値を設定します。 |
tooltip |
string |
ユーザーが要素をマウスオーバーした後、わずかな時間、情報ボックス内に表示するテキスト。これはエディター UI でのみサポートされます。 |
usage-hints |
UIElements.UsageHints |
VisualElement の意図されているハイレベルな使用パターンの概要を指定するヒント値の組み合わせ。このプロパティは、VisualElement がまだ Panel の一部でない場合にのみ設定できます。Panel の一部になると、このプロパティは事実上読み取り専用となり、変更しようとすると例外がスローされます。適切な UsageHints を指定することで、予想される使用パターンに基づいて、特定の操作をどのように処理するか、または高速化するかについて、システムがより適切な判断を下すようになります。これらのヒントは動作や視覚的な結果には影響しませんが、パネルとその中の要素の全体的なパフォーマンスにのみ影響することに注意してください。常に適切な UsageHints を指定することを考慮するようお勧めしますが、特定の条件下 (例: ターゲットプラットフォームのハードウェア制限) では、一部の UsageHints が内部的に無視される可能性があることに留意してください。 |
view-data-key |
string |
ビューデータの永続性 (ツリーの展開状態、スクロール位置、ズームレベルなど) に使用されます。 このキーは、ビューデータストアからビューデータを保存およびロードするために使用されます。このキーを設定しないと、関連する VisualElement の永続性が無効になります。詳細については、ビューデータの永続性を参照してください。 |
以下の表は、すべての C# パブリックプロパティ名と、それに関連する USS セレクターのリストです。
| C# プロパティ | USS セレクター | 説明 |
|---|---|---|
ussClassName |
.unity-repeat-button |
この型の要素の USS クラス名。 |
ussClassName |
.unity-text-element |
この型の要素の USS クラス名。 |
selectableUssClassName |
.unity-text-element__selectable |
選択可能なテキスト要素の USS クラス名。 |
disabledUssClassName |
.unity-disabled |
ローカルで無効に設定されている要素の USS クラス名。 |
Inspector または UI Toolkit Debugger の Matching Selectors セクション を使用して、階層のすべてのレベルで VisualElement のコンポーネントに影響する USS セレクターを確認することもできます。