Contenitori UI sullo schermo

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.

Il contenitore ScreenGui contiene GuiObjects per essere visualizzato sullo schermo di un giocatore, inclusi frame , etichette , pulsanti e altro ancora.Tutti gli oggetti e il codice dell'interfaccia utente sullo schermo vengono memorizzati e modificati sul client.

Example ScreenGui with various GuiObject children, including a Frame, TextLabel, TextBox, and ImageButton.

Per visualizzare un ScreenGui e il suo figlio GuiObjects a ogni giocatore che si unisce all'esperienza, posizionalo all'interno del contenitore StarterGui.Quando un giocatore si unisce a un'esperienza e il suo personaggio viene generato per la prima volta, il ScreenGui e i suoi contenuti si clonano nel contenitore PlayerGui per quel giocatore, situato all'interno del contenitore Players.

Diagram of how a ScreenGui clones from StarterGui to a player's PlayerGui

Mentre un'esperienza cresce in scala, potresti avere bisogno di più interfacce schermo, come uno schermo di titolo, un menu delle impostazioni, un'interfaccia del negozio e altro ancora.In tali casi, puoi posizionare più container unici ScreenGui all'interno di StarterGui e attivare la proprietà di ciascun container Enabled a seconda se deve essere visibile e attivo (mentre false , i contenuti non verranno visualizzati, elaborati dall'utente o aggiornati in risposta alle modifiche).

Explorer hierarchy showing multiple ScreenGui containers, one enabled and the others disabled, in order to control which are visible at a given time.

La proprietà può essere attivata inizialmente attraverso la finestra Proprietà e/o puoi impostarla durante il tempo di gioco da uno script lato client tramite l'accesso a il giocatore's e impostandolo su o per il contenitore desiderato.

Proprietà del container

Le seguenti proprietà ti consentono di personalizzare gli inserimenti dello schermo su più dispositivi, l'ordine di visualizzazione quando si utilizzano più contenitori di schermo e altro.

Inserzioni dello schermo

I telefoni moderni approfittano di tutta la schermata ma in genere includono nottolini, tagli e altri elementi che occupano spazio sullo schermo.Ogni esperienza Roblox include anche i controlli della barra superiore per l'accesso rapido al menu principale, la chat, la classifica, e altro ancora.

Mobile device showing Roblox top bar buttons and device cutout.

Per garantire che i giocatori possano vedere e accedere a tutta l'interfaccia utente facilmente e senza ostacoli, Roblox fornisce la proprietà che controlla gli inserimenti dell'area sicura per i contenuti di un .

Il predefinito di CoreUISafeInsets mantiene tutti i discendenti GuiObjects all'interno dell'area sicura dell'interfaccia utente principale, libera dai pulsanti della barra superiore e da altri tagli di schermo.Questa impostazione è raccomandata se il ScreenGui contiene elementi di interfaccia utente interattivi.

Mobile device showing the core UI safe area.

Ordine di visualizzazione

Quando si utilizzano più interfacce ScreenGui multiple, puoi stratificarle per Z‑index attraverso la loro proprietà DisplayOrder.Ad esempio, per visualizzare un menu delle impostazioni modal su uno ScreenGui di fronte all'interfaccia utente principale dell'esperienza su un altro ScreenGui , assegnare un più alto DisplayOrder alla modal rispetto all'interfaccia di base.

Ripristina allo spawn

La proprietà booleana ResetOnSpawn determina se le ScreenGui resets (si ripristina e si replica nel personaggio del giocatore PlayerGui) ogni volta che il personaggio del giocatore respawna.

CondizioneRipristini
ResetOnSpawn è true (predefinito).
YES
Il ScreenGui è un discendente indiretto di StarterGui ; ad esempio è posizionato all'interno di un Folder situato all'interno di StarterGui .
YES
è e il è un discendente diretto di .
NO

Accedi all'interfaccia utente del giocatore

Come notato, genitorare un a cloniarlo e il suo figlio nel contenitore di un giocatore quando si uniscono all'esperienza e il loro personaggio viene generato per primo.

Se devi controllare il contenitore dell'interfaccia utente di un giocatore durante il tempo di gioco, ad esempio per mostrare/nascondere uno specifico ScreenGui o uno qualsiasi dei suoi figli, accedici come segue da un LocalScript :

Script locale - Accedere a un giocatore's UI

local Players = game:GetService("Players")
local player = Players.LocalPlayer
local playerGui = player.PlayerGui
local titleScreen = playerGui:WaitForChild("TitleScreen")
local settingsMenu = playerGui:WaitForChild("SettingsMenu")
titleScreen.Enabled = false -- Nascondi schermo di titolo
settingsMenu.Enabled = true -- Show settings menu

Disabilita interfaccia utente predefinita

Tutte le esperienze Roblox includono diversi elementi dell'interfaccia utente che sono abilitati per impostazione predefinita.Se non hai bisogno di nessuno di questi elementi o se vuoi sostituirli con le tue creazioni, puoi usare il metodo SetCoreGuiEnabled() in uno script lato client con l'opzione Enum.CoreGuiType associata.

Interfaccia utente predefinitaEnum associata
Lista aggiornata dinamicamente Players elenco, comunemente utilizzato come classifica .Enum.CoreGuiType.PlayerList
La barra di Health del personaggio. Non appare se la barra di Humanoid del personaggio è in piena salute.Enum.CoreGuiType.Health
Il personaggio di Backpack che contiene strumenti in-esperienza . Non appare se non ci sono Tools nello zaino.Enum.CoreGuiType.Backpack
La finestra di chat di testo.Enum.CoreGuiType.Chat
Menu popup del personaggio emote.Enum.CoreGuiType.EmotesMenu
Una finestra che mostra la prospettiva o il punto di vista di un Giocatoredel proprio personaggio.Non appare a meno che il giocatore non abbia abilitato Vista automatica dal menu Roblox.Enum.CoreGuiType.SelfView
Un pulsante cattura screenshot sulla destra dello schermo.Non appare a meno che il giocatore non abbia abilitato Catture dal menu Roblox.Enum.CoreGuiType.Captures
Core UI elements in every Roblox experience.
Script del client - Disabilita elementi UI predefiniti

local StarterGui = game:GetService("StarterGui")
-- Disabilita la barra della salute e lo zaino predefiniti
StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.Health, false)
StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.Backpack, false)

Inoltre, i dispositivi con capacità di tocco includono per impostazione predefinita un thumbstick virtuale e un pulsante di salto.Se lo desideri, puoi nascondere questi elementi impostando GuiService.TouchControlsEnabled a false in uno script lato client.

UI elements for touch-capable devices in every Roblox experience
Script del client - Disabilita i controlli touch

local GuiService = game:GetService("GuiService")
GuiService.TouchControlsEnabled = false