Unity kasutajaliidese nuppude kasutamine

Lehekülg uuendatud :
Lehe loomise kuupäev :

Kontrollimise keskkond

Windows
  • Windows 11
Ühtsuse toimetaja
  • 2020.3.25f1

Selle näpunäite eeltingimused

Nende näpunäidete selgitamise eeltingimuseks on eelnevalt tehtud järgmised seadistused.

Alguses

Nuppu saab kasutada objektina, mida kasutaja ise klõpsab, või seda saab kasutada valiku tegemiseks, näiteks "jah" või "ei". Kui soovite veidi täpsemat teavet saada, saate loendiüksuse, näiteks menüü valimiseks kasutada nuppu objektina.

Lisaks sellele saab seda kasutada ka silumiseks ja nupule klõpsates, et olekut meelevaldselt muuta.

Teksti muutmiseks klõpsake nuppu

Kui klõpsate lihtsalt nuppu, teete mõne töötlemise. Seekord, iga kord, kui klõpsate nuppu, suureneb teksti number 1 võrra.

Kasutajaliidese paigutus ja konfiguratsioon

Lisage hierarhiast vaatesse tekst ja nupud.

Saate selle paigutada kõikjale, kui panete selle kohta, kus seda näete. Kuna algses olekus on seda raske näha, on seatud sellised seaded nagu "valge teksti värv", "suuruse muutmine", "fondi suuruse suurendamine" jne. Teksti sisu muudetakse hiljem automaatselt, nii et võite selle jätta "uueks tekstiks".

Nupu märgiseade on jagatud "Button" ja "Text", seega valige Text ja määrake see.

Skriptide lisamine

Valige oma projektist kaust Stseenid, paremklõpsake tühjal alal ja valige selle lisamiseks C# Script. Algselt on parem skript luua eraldi kaustas, kuid ma jätan selle operatsiooni kontrollimiseks välja.

Faili nimi peaks olema kergesti mõistetav. Sisestage võimalikult palju tähti ja numbreid. ButtonClick Sel juhul on see seatud väärtusele .

Kui see on loodud, topeltklõpsake skriptiredaktori avamiseks skripti C#. Kui teie skriptiredaktor on Visual Studio, peaksite nägema midagi sellist:

Start, Meetodit pole seekord vaja, nii et kustutage see, Update kirjutage see ümber ja salvestage järgmiselt.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;    // 追加

public class ButtonClick : MonoBehaviour
{
  /// <summary>カウントアップするテキストオブジェクト。</summary>
  [SerializeField] Text CountText;

  public void OnClick()
  {
  }
}

C# süntaks ei ole selle näpunäite peamine teema, nii et ma ei selgita seda. Palun õppige ise. Käsitletakse ainult Ühtsuse-spetsiifilisi kirjeldusi.

MonoBehaviour Klassides kirjutatud väljad, mis pärivad, saab määrata ühtsuse redaktoris. CountText Siin määratleme tekstiobjekti nimega Selle kuvamiseks tuleb see public avaldada koos . SerializeField Kui aga lisate atribuudi, saate public selle redaktoris kuvada muu juurdepääsuga kui . See on parem kirjeldus, kui te ei soovi sellele teistest klassidest võimalikult palju juurde pääseda, välja arvatud selle redaktoris seadistamiseks.

OnClick Pakutakse meetodeid, et kirjeldada, mida teha nupu klõpsamisel. public See tuleb määratleda .

Ühtsuse redaktorist manustamine

Naaske Unity Editori ja valige hierarhiast EventSystem .

EventSystem ilmub inspektor, nii et kukutage äsja loodud C# skript allpool olevale alale "Lisa komponent". Skript on nüüd töövalmis.

Tegelikult saab selle skripti lisada mis tahes objektile ja Button see tuleks objektile lisada. Selles näpunäites lisame, et seda oleks ühtlaselt lihtne mõista EventSystem . Button Loomulikult ei ole mingit probleemi selle kinnitamisega . Siiski on parem mitte kinnitada seda täiesti mitteseotud objektile, sest see põhjustab segadust.

Kui vaatate lisatud skripti, näete, et kuvatakse kirje "Count Text". Kui olete välja sel viisil avaldanud, saate väärtuse määrata Unity Editorist. Tahame nupul klõpsates tekstiobjektile juurde pääseda, nii et lohistage hierarhiast Text välja ja Count Text kukutage see . See võimaldab teil sellele igal ajal oma skriptist juurde pääseda.

Järgmisena valige hierarhiast Button ja klõpsake nuppu + Inspektori Button klõpsamisel .

Seejärel lisatakse üks üksus.

Paremas alanurgas olen hierarhiast EventSystem lisatud skripti maha jätnud. Kuna peame siia panema objekti, millele skript on lisatud, Kui manustate nupule skripti, peate lisama nupu.

Kui klõpsate nupul "Funktsioon puudub", kuvatakse lisatud skript, nii et ButtonClick valige . Valige selles loodud OnClick meetod. Nüüd, kui klõpsate nupule, OnClick nimetatakse seda meetodit.

Väljundlogi ühe nupuvajutusega

Väljastan logi, et kinnitada, et see töötab. Saate kontrollida, kas see töötab lihtsalt ühe rea kirjutamisega ja see on väga kasulik tulevase silumise jaoks, seega on parem seda meeles pidada.

ButtonClick Avage skript ja OnClick lisage jaotisse .

public void OnClick()
{
  // コンソール ログを出力
  Debug.Log("ボタンが押されました!");
}

Kui olete sisenenud ja salvestanud, käivitage mäng ja klõpsake nuppu.

Iga kord, kui sellele klõpsate, ilmub konsooli vahekaardile teade. Nüüd näete, et see töötab.

Teksti muutmine ühe nupuvajutusega

Nüüd, kui saate nuppe liigutada, on selle näpunäite eesmärk saavutatud. Nüüd, kui olen tekstiobjekti paigutanud, soovin teksti muuta iga kord, kui nuppu klõpsan.

Kirjutage skript ümber järgmiselt.

// 省略

public class ButtonClick : MonoBehaviour
{
  /// <summary>カウントアップするテキストオブジェクト。</summary>
  [SerializeField] Text CountText;

  /// <summary>クリックカウント。</summary>
  private int _counter = 0;

  public void OnClick()
  {
    // コンソール ログを出力
    Debug.Log("ボタンが押されました!");

    // カウントを増やす
    _counter++;

    // カウントした数を表示する
    CountText.text = _counter.ToString();
  }
}

Sisu on lihtsalt selleks, et suurendada arvu 1 võrra iga kord, kui klõpsate ja määrate numbri tekstiobjektile.

Käivitage mäng ja veenduge, et arv suureneb iga klõpsuga.