Wywołaj Button.new() wprost, a margines wewnętrzny, wysokość i zawijanie rozjadą się
nieznacznie z ekranu na ekran. Tego rozjazdu nie widać w przeglądzie kodu, a widać go na zrzucie ekranu.
| Grupa | Funkcje |
|---|---|
| Struktura | column row wrap_row padding spacer divider responsive_grid aspect foldable |
| Tekst | label label_key line section typography |
| Przyciski | button button_key icon_button list_button list_row apply_icon style_choice_card style_chip_button style_chip_label |
| Wprowadzanie | line_edit textarea toggle checkbox slider picker select dropdown radio_group segmented choice_grid |
| Prezentacja | card chip hud_panel chip_panel avatar skeleton alert table tabs breadcrumb progress empty_state |
| Elementy powierzchni | surface box floating disc face_padding |
| Pomocnicze | form fit_words natural_width tooltip_node card_body let_input_through |
box() zawsze zwraca StyleBoxFlat, ponieważ wywołujący go otrzymują
i dostrajają bg_color albo corner_radius. Gdy własny kształt ma przetrwać, użyj
surface().
Wiersze list z opisem
GoStyle.list_button(GoIconSet.SWORD, "Strażnik Przysięgi", _inspect, Color.TRANSPARENT,
"Miecz długi / Atak 42", false)
Wiersz z drugą linią dostaje równy margines górny i dolny, luźniejszy niż wiersz jednoliniowy, a para tytuł/opis zostaje wyśrodkowana w pionie obok ikony — także wtedy, gdy kontener rozciągnie wiersz na wyższy, i po tym, jak opis zawinie się na kilka linii. Cały wiersz pozostaje jednym celem dotknięcia.
medieval_light.Rzędy, które się zawijają
Wkładaj kontrolki do wrap_row w ich naturalnej szerokości. Przy pozostawionym zawijaniu
minimalna szerokość przycisku spada do prawie niczego, a rząd wymierza po niej swoją komórkę — etykieta zapada
się do jednego znaku na linię. Fabryka zapobiega temu za ciebie.
Nigdy nie zostawiaj pustej listy pustą
page.add_child(GoStyle.empty_state(GoIconSet.BOX, "Jeszcze nic tu nie ma"))
Ludzie czytają pusty ekran jako zepsuty.
Haki do dziedziczenia
Każde miejsce, w którym konstruowany jest widżet potomny, przechodzi przez metodę do nadpisania, więc projekt, który dziedziczy po typach gohud, może dostać swoje własne podklasy wewnątrz widżetów bez kopiowania kodu.
| Hak | Widżet | Domyślnie |
|---|---|---|
_make_scroll() | GoCoachMark, GoSurface | GoScroll.new() |
_make_close_button() | GoPromptCard, GoSurface | GoIconButton.new() |
_make_surface() | GoSheet, GoDialogs | GoSurface.new() |
_should_pause() | GoCoachMark | Ukrywa kartę, gdy otwarte jest okno modalne |