Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Zasób rysowalny to ogólna koncepcja grafiki, którą można narysować na ekranie.
można pobrać za pomocą interfejsów API, takich jak getDrawable(int), lub
do innego zasobu XML o takich atrybutach jak android:drawable i android:icon.
Jest kilka rodzajów elementów, które można przeciągać:
Element rysowalny, który zarządza tablicą innych obiektów rysowalnych. Są one rysowane w kolejności tablicy, więc
na początku jest rysowany element o największym indeksie. Tworzy LayerDrawable.
Plik XML odwołujący się do innej grafiki bitmapowej
dla różnych stanów, aby na przykład użyć innego obrazu po naciśnięciu przycisku.
Tworzy StateListDrawable.
Plik XML definiujący element rysowalny, który zarządza licznymi alternatywnymi elementami, z których każdy
mają przypisaną maksymalną wartość liczbową. Tworzy LevelListDrawable.
Plik XML określający obiekt rysowalny, który wstawia inny obiekt rysowalny o określonej odległości.
Jest to przydatne, gdy w widoku trzeba narysować tło mniejsze niż rzeczywisty
granic.
Uwaga:zasób kolorów może być też
używany jako obiekt rysowalny w kodzie XML. Na przykład podczas tworzenia listy stanów
obiekt rysowalny, możesz odwoływać się do zasobu koloru dla atrybutu android:drawable (android:drawable="@color/green").
Bitmapa
Obraz bitmapy. Android obsługuje pliki mapy bitowej w tych formatach:
PNG (preferowany), WEBP (preferowany, wymaga interfejsu API na poziomie 17 lub wyższym), JPG (akceptowalny), GIF (zalecany).
Możesz odwołać się bezpośrednio do pliku bitmapy, używając nazwy pliku jako identyfikatora zasobu lub utworzyć
identyfikator zasobu aliasu w pliku XML.
Uwaga: pliki bitmap mogą być automatycznie optymalizowane w formacie bezstratnym
kompresję obrazu za pomocą narzędzia aapt. Dla:
Na przykład plik PNG o prawdziwym kolorze, który nie wymaga więcej niż 256 kolorów, może zostać przekonwertowany na 8-bitowy.
PNG z paletą kolorów. W ten sposób uzyskujesz obraz o takiej samej jakości, który wymaga mniej
pamięci.
Pamiętaj więc, że pliki binarne obrazów umieszczone w tym katalogu mogą się zmieniać podczas kompilacji. Jeśli
Planujesz odczytać obraz jako strumień bitowy, aby przekonwertować go na bitmapę,
folder res/raw/, który nie jest zoptymalizowany.
Plik bitmapy
Plik bitmapy to plik w formacie PNG, WEBP, JPG lub GIF. Android tworzy Drawable
w dowolnym z tych plików po zapisaniu ich w katalogu res/drawable/.
lokalizacja pliku:
res/drawable/filename.png (.png, .webp, .jpg lub .gif)
Nazwa pliku to identyfikator zasobu
Bitmapa XML to zasób zdefiniowany w kodzie XML, który wskazuje plik bitmapy. Efekt to alias dla
nieprzetworzonego pliku bitmapy. Plik XML może określać dodatkowe właściwości bitmapy, takie jak dithering i kafelki.
Uwaga: elementu możesz używać jako elementu podrzędnego
element . Dla:
np. podczas tworzenia listy stanów lub listy warstw,
możesz wykluczyć android:drawable
z elementu i zagnieździć w nim element .
definiujący element rysowalny.
Wymagane. Określa źródło mapy bitowej i jego właściwości.
Atrybuty:
xmlns:android
Ciąg znaków. Definiuje przestrzeń nazw XML, którą musi być
"http://schemas.android.com/apk/res/android" Jest to wymagane tylko wtedy, gdy
Elementem głównym jest . Nie jest potrzebny, gdy
Element jest zagnieżdżony w elemencie .
android:src
Zasób rysowalny. Wymagany. Odniesienie do elementu rysowalnego
.
android:antialias
Wartość logiczna. Włącza lub wyłącza antyaliasing.
android:dither
Wartość logiczna. Włącza lub wyłącza rozpraszanie bitmapy, jeśli nie jest to możliwe
mają taką samą konfigurację pikseli jak ekran, na przykład mapę bitową ARGB 8888 na modelu RGB 565.
ekranu.
android:filter
Wartość logiczna. Włącza lub wyłącza filtrowanie bitmapy. Filtrowanie jest używane, gdy
bitmapa jest zmniejszona lub rozciągnięta w celu wygładzenia.
android:gravity
Słowo kluczowe. Definiuje grawitację dla bitmapy. Grawitacja wskazuje, gdzie
umieść obiekt rysowalny w kontenerze, jeśli mapa bitowa jest mniejsza niż kontener.
Musi to być co najmniej jedna z tych wartości stałych rozdzielonych znakiem |:
Wartość
Opis
top
Umieść obiekt na górze kontenera, nie zmieniając jego rozmiaru.
bottom
Umieść obiekt na dole kontenera, nie zmieniając jego rozmiaru.
left
Umieść obiekt przy lewej krawędzi kontenera, nie zmieniając jego rozmiaru.
right
Umieść obiekt przy prawej krawędzi kontenera, nie zmieniając jego rozmiaru.
center_vertical
Umieść obiekt na środku kontenera w pionie, nie zmieniając jego rozmiaru.
fill_vertical
W razie potrzeby zwiększ pionowy rozmiar obiektu, aby wypełnił cały kontener.
center_horizontal
Umieść obiekt na środku kontenera w poziomie, nie zmieniając jego rozmiaru.
fill_horizontal
W razie potrzeby powiększ obiekt w poziomie, aby wypełnił cały kontener.
center
Umieść obiekt na środku kontenera na osi pionowej i poziomej,
i jego rozmiaru.
fill
W razie potrzeby zwiększ rozmiar obiektu w poziomie i pionie, aby wypełnił cały obszar
kontenera. Jest to ustawienie domyślne.
clip_vertical
Dodatkowa opcja, w ramach której można przyciąć górne lub dolne krawędzie elementu podrzędnego
granic swojego kontenera. Klip jest oparty na grawitacji pionowej: górna grawitacja przycina
dolna krawędź grawitacja przycina górną, ale żadna z nich nie przycina obu.
clip_horizontal
Dodatkowa opcja, w ramach której można przyciąć lewe lub prawe krawędzie elementu podrzędnego
granic swojego kontenera. Klip jest oparty na grawitacji poziomej: lewa grawitacja
prawa grawitacja przycina lewą krawędź, ale żadna z nich nie przycina obu.
android:mipMap
Wartość logiczna. Włącza lub wyłącza wskazówkę dotyczącą mipmap. Aby dowiedzieć się więcej, przeczytaj setHasMipMap().
Wartość domyślna to false (fałsz).
android:tileMode
Słowo kluczowe. Określa tryb kafelka. Gdy włączony jest tryb kafelków, bitmapa jest
powtórzenia. Grawitacja jest ignorowana po włączeniu trybu kafelka.
Musi mieć jedną z tych stałych wartości:
Wartość
Opis
disabled
Nie kafelkuj bitmapy. jest to wartość domyślna
clamp
Replikuj kolor krawędzi, jeśli cieniowanie wykracza poza pierwotne granice
repeat
Powtórz obraz cieniowania w poziomie i pionie.
mirror
Powtórz obraz w cieniu w poziomie i pionie, naprzemienne lustrzane odbicia.
sąsiednie obrazy są zawsze łączone.
NinePatch to obraz PNG, w którym można zdefiniować obszary rozciągane
które Android skaluje, gdy zawartość widoku wykracza poza normalne granice obrazu. Ty
zazwyczaj przypisują ten typ obrazu jako tło widoku, który ma co najmniej jeden zestaw wymiarów
do "wrap_content".
Gdy widok powiększa się w celu dopasowania do treści, pojawia się
jest również skalowany
do rozmiaru widoku. Przykładem użycia obrazu z 9 poprawkami jest
tło używane przez standardowy widżet Button na Androida, który musi się rozciągać do
umieść tekst (lub obraz) wewnątrz przycisku.
Tak jak w przypadku zwykłej bitmapy, możesz odwoływać się bezpośrednio do pliku z 9 poprawkami
lub z zasobu zdefiniowanego przez kod XML.
Wymagane. Definiuje źródło z 9 poprawkami i jego właściwości.
Atrybuty:
xmlns:android
Ciąg znaków. Wymagane. Definiuje przestrzeń nazw XML, którą musi być
"http://schemas.android.com/apk/res/android"
android:src
Zasób rysowalny. Wymagany. Odniesienie do dziewięciu poprawek
.
android:dither
Wartość logiczna. Włącza lub wyłącza rozpraszanie bitmapy, jeśli nie jest to możliwe
mają taką samą konfigurację pikseli jak ekran, na przykład mapę bitową ARGB 8888 na modelu RGB 565.
ekranu.
Obiekt LayerDrawable to obiekt rysowalny
który zarządza tablicą innych elementów narysowanych. Każdy element rysowalny na liście jest rysowany w kolejności
z listy. Ostatni obiekt rysowalny na liście jest rysowany na początku.
Każdy obiekt rysowalny jest reprezentowany przez element wewnątrz pojedynczego elementu .
Wymagane. Musi to być element główny. Zawiera co najmniej 1 element .
Atrybuty:
xmlns:android
Ciąg znaków. Wymagane. Definiuje przestrzeń nazw XML, którą musi być
"http://schemas.android.com/apk/res/android"
Określa element, który można rysować w warstwie, którą można rysować, w pozycji określonej przez jego atrybuty.
Musi być elementem podrzędnym elementu . Akceptuje podrzędne
.
Atrybuty:
android:drawable
Zasób rysowalny. Wymagany. Odniesienie do elementu rysowalnego
.
android:id
Identyfikator zasobu. Unikalny identyfikator zasobu tego elementu rysowanego. Tworzenie nowego zasobu
Identyfikator tego produktu, użyj formularza:
"@+id/name" Symbol plusa oznacza, że jest ona utworzona jako nowy
ID. Za pomocą tego identyfikatora możesz
pobierz i zmodyfikuj obiekt rysowalny za pomocą funkcji View.findViewById() lub Activity.findViewById().
android:top
Wymiar. Przesunięcie od góry jako wartość wymiaru lub zasób wymiaru.
android:right
Wymiar. Odpowiednie przesunięcie jako wartość wymiaru lub zasób wymiaru.
android:bottom
Wymiar. Przesunięcie do dołu jako wartość wymiaru lub zasób wymiaru.
android:left
Wymiar. Przesunięcie od lewej jako wartość wymiaru lub zasób wymiaru.
Domyślnie wszystkie rysowane elementy są domyślnie skalowane tak, by pasowały do rozmiaru widoku, który je zawiera. W związku z tym:
umieszczenie obrazów na liście warstw na różnych pozycjach może zwiększyć rozmiar widoku.
niektóre obrazy skalują się odpowiednio do potrzeb.
Aby unikać
skalowania elementów na liście należy użyć elementu wewnątrz elementu , aby określić obiekt rysowalny i zdefiniować grawitację elementu, który nie jest rysowany
skalę, taką jak "center". Na przykład definiuje element
który skaluje się, by dopasować się do widoku kontenera:
android:drawable="@drawable/image"/>
Aby uniknąć skalowania, w tym przykładzie użyto elementu z wyśrodkowanym
grawitacja:
W tym przykładzie do zdefiniowania elementu rysowalnego w tym przykładzie użyto zagnieżdżonego elementu
dla każdego elementu o grawitacji "center". Dzięki temu żaden z obrazów nie będzie skalowany
do rozmiaru kontenera ze względu na zmiany rozmiaru spowodowane przez obrazy przesunięcia.
Ten kod XML układu stosuje obiekt rysowalny do widoku:
Obiekt StateListDrawable to obiekt rysowalny zdefiniowany w kodzie XML.
który korzysta z wielu obrazów do reprezentowania tej samej grafiki, w zależności od stanu
obiektu. Stan widżetu Button można na przykład kliknąć, zaznaczyć
lub żaden z nich; za pomocą rysowania listy stanów dla każdego z nich
stanu.
Listę stanów opisujesz w pliku XML. Każda grafika jest reprezentowana przez element wewnątrz jednego elementu . Co
wykorzystuje różne atrybuty, aby opisać stan, w jakim jest używany jako element graficzny
obiekt rysowalny.
Podczas każdej zmiany stanu lista stanów jest przesuwana od góry do dołu. Pierwszy element, który
pasuje do bieżącego stanu. Wybór nie opiera się na „najlepszym”
pasuje”, ale raczej pierwszy element, który spełnia minimalne kryteria obowiązujące w danym stanie.
Wymagane. Musi to być element główny. Zawiera co najmniej 1 element .
Atrybuty:
xmlns:android
Ciąg znaków. Wymagane. Definiuje przestrzeń nazw XML, którą musi być
"http://schemas.android.com/apk/res/android"
android:constantSize
Wartość logiczna. Prawda, jeśli zgłoszony rozmiar wewnętrzny obiektu rysowania pozostaje na stałym poziomie jako stan
zmiany (rozmiar jest maksymalnym rozmiarem dla wszystkich stanów); false, jeśli rozmiar różni się w zależności od
do bieżącego stanu. Wartość domyślna to false (fałsz).
android:dither
Wartość logiczna. Prawda, aby włączyć dithering bitmapy, jeśli bitmapa nie ma takiego samego piksela
konfigurację jako ekran, na przykład mapę bitową ARGB 8888 na ekranie RGB 565; fałsz na
wyłączyć dithering. Wartość domyślna to true (prawda).
android:variablePadding
Wartość logiczna. Prawda, jeśli dopełnienie elementu rysowanego zmienia się w zależności od bieżącego
w wybranym stanie; Wartość false, jeśli dopełnienie musi pozostać takie samo w oparciu o maksymalną
ze wszystkimi stanami. Aby włączyć tę funkcję, musisz uporać się z
wykonywanie układu przy zmianie stanu, co często nie jest obsługiwane. Wartość domyślna to false (fałsz).
Definiuje element rysowalny do użycia w określonych stanach, zgodnie z jego atrybutami. Musi to być
element podrzędny elementu .
Atrybuty:
android:drawable
Zasób rysowalny. Wymagany. Odwołanie do zasobu rysowalnego.
android:state_pressed
Wartość logiczna. Prawda, jeśli ten element jest używany po dotknięciu obiektu (np. przycisk).
poruszony; false, jeśli ten element jest używany domyślnie, bez kliknięcia.
android:state_focused
Wartość logiczna. Prawda, jeśli ten element jest używany, gdy obiekt jest zaznaczony przy użyciu danych wejściowych,
np. gdy użytkownik wybierze pole tekstowe. false, jeśli ten element jest używany domyślnie,
i stan niezaznaczony.
android:state_hovered
Wartość logiczna. Prawda, jeśli ten element jest używany po najechaniu na niego kursorem.
false, jeśli ten element jest używany w domyślnym stanie innym niż najechanie. Często
Element rysowalny może być tym samym obiektem rysowanym użytym jako obiekt rysowalny. stanu.
Wprowadzono w interfejsie API poziomu 14.
android:state_selected
Wartość logiczna. Prawda, jeśli ten element jest używany, gdy obiekt jest bieżącym
wybór użytkownika podczas nawigacji za pomocą sterowania kierunkowego, na przykład podczas poruszania się po liście
padem kierunkowym. false, jeśli ten element jest używany, gdy obiekt nie jest zaznaczony.
Wybrany stan jest używany, gdy android:state_focused nie jest wystarczający,
np. gdy aktywny jest widok listy i element w nim jest zaznaczony za pomocą pada kierunkowego.
android:state_checkable
Wartość logiczna. Prawda, jeśli ten element jest używany, gdy można go wybrać. false, jeśli
jest używany, gdy obiektu nie można wybrać. Przydatny tylko wtedy, gdy obiekt może
przejście między widżetem, który można wybrać lub którego nie można wybrać.
android:state_checked
Wartość logiczna. Prawda, jeśli ten element jest używany, gdy obiekt jest zaznaczony. Wartość false (fałsz)
jest używane, gdy obiekt nie jest zaznaczony.
android:state_enabled
Wartość logiczna. Wartość prawda, jeśli ten element jest używany, gdy obiekt jest włączony.
oznacza zdolność do rejestrowania zdarzeń dotknięcia lub kliknięcia; false, jeśli jest używana, gdy obiekt jest
wyłączono.
android:state_activated
Wartość logiczna. Prawda, jeśli ten element jest używany, gdy obiekt jest aktywowany jako
wybór trwały, np. „highlight” (zaznacz) poprzednio wybranego elementu listy w trwałym
widok nawigacji; false, jeśli jest używana, gdy obiekt nie został aktywowany.
Wprowadzono w interfejsie API poziomu 11.
android:state_window_focused
Wartość logiczna. Prawda, jeśli ten element jest używany, gdy okno aplikacji jest zaznaczone, co oznacza
aplikacja działa na pierwszym planie; false, jeśli ten element jest używany, gdy aplikacja
nie jest aktywne, np. gdy obszar powiadomień zostanie otwarty lub pojawi się okno.
Uwaga: Android stosuje pierwszy element na liście stanów, który
pasuje do bieżącego stanu obiektu. Jeśli więc pierwszy element na liście zawiera
żadnego z poprzednich atrybutów stanu, jest on stosowany za każdym razem. Właśnie dlatego warto zadbać o
jako zawsze ostatnią, jak widać w przykładzie poniżej.
Obiekt rysowalny, który zarządza pewną liczbą alternatywnych elementów, z których każdy ma przypisaną maksymalną wartość liczbową
. Ustawienie wartości poziomu elementu rysowania za pomocą funkcji setLevel() wczytuje zasób rysowalny w
poziomu listy, której wartość android:maxLevel jest większa lub równa wartości
i przekazywane do metody.
Obiekt TransitionDrawable to obiekt rysowalny
które mogą przechodzić między 2 innymi zasobami.
Każdy obiekt rysowalny jest reprezentowany przez element wewnątrz jednego elementu . Obsługiwane są maksymalnie 2 elementy. Aby przejść dalej, wywołaj
startTransition() Do
przejście do tyłu, wywołaj reverseTransition().
Wymagane. Musi to być element główny. Zawiera co najmniej 1 element .
Atrybuty:
xmlns:android
Ciąg znaków. Wymagane. Definiuje przestrzeń nazw XML, którą musi być
"http://schemas.android.com/apk/res/android"
Określa element rysowalny, który ma być używany jako element przejścia, który można narysować.
Musi być elementem podrzędnym elementu . Akceptuje podrzędne
.
Atrybuty:
android:drawable
Zasób rysowalny. Wymagany. Odniesienie do elementu rysowalnego
.
android:id
Identyfikator zasobu. Unikalny identyfikator zasobu tego elementu rysowanego. Tworzenie nowego zasobu
Identyfikator tego produktu, użyj formularza:
"@+id/name" Symbol plusa oznacza, że jest ona utworzona jako nowy
ID. Za pomocą tego identyfikatora możesz
pobierz i zmodyfikuj obiekt rysowalny za pomocą funkcji View.findViewById() lub Activity.findViewById().
android:top
Liczba całkowita. Przesunięcie od góry w pikselach.
android:right
Liczba całkowita. Przesunięcie od prawej w pikselach.
android:bottom
Liczba całkowita. Odsunięcie od dołu w pikselach.
android:left
Liczba całkowita. Przesunięcie od lewej w pikselach.
Element rysowalny zdefiniowany w kodzie XML, który wstawia inny obiekt rysowalny o określonej odległości. To jest przydatne
gdy widok wymaga tła, które jest mniejsze niż jego rzeczywiste granice.
Element rysowalny zdefiniowany w kodzie XML, który przypina inny obiekt rysowalny na podstawie bieżącego poziomu obiektu rysowania. Ty
może kontrolować szerokość i wysokość elementu rysowanego w zależności od poziomu,
w postaci grawitacji, aby kontrolować, gdzie zostanie umieszczony w całym pojemniku. Najczęściej używane do implementacji
takie jak paski postępu.
Wymagane. Określa element, który można rysować. Musi to być element główny.
Atrybuty:
xmlns:android
Ciąg znaków. Wymagane. Definiuje przestrzeń nazw XML, którą musi być
"http://schemas.android.com/apk/res/android"
android:drawable
Zasób rysowalny. Wymagany. Odniesienie do elementu rysowalnego
zasobu, który ma zostać przycięty.
android:clipOrientation
Słowo kluczowe. Orientacja klipu.
Musi mieć jedną z tych stałych wartości:
Wartość
Opis
horizontal
Przypnij element rysowalny w poziomie.
vertical
Przypnij element rysowalny w pionie.
android:gravity
Słowo kluczowe. Określa miejsce klipu w elemencie rysowanym.
Musi to być co najmniej jedna z tych wartości stałych rozdzielonych znakiem |:
Wartość
Opis
top
Umieść obiekt na górze kontenera, nie zmieniając jego rozmiaru. Gdy clipOrientation ma wartość "vertical", przycinanie ma miejsce na dole elementu, który można rysować.
bottom
Umieść obiekt na dole kontenera, nie zmieniając jego rozmiaru. Gdy clipOrientation ma wartość "vertical", przycinanie ma miejsce na górze elementu, który można rysować.
left
Umieść obiekt przy lewej krawędzi kontenera, nie zmieniając jego rozmiaru. To jest
wartość domyślną. Gdy clipOrientation ma wartość "horizontal", przycinanie ma miejsce po prawej stronie
obiekt rysowalny.
right
Umieść obiekt przy prawej krawędzi kontenera, nie zmieniając jego rozmiaru. Gdy clipOrientation ma wartość "horizontal", przycinanie ma miejsce po lewej stronie argumentu
obiekt rysowalny.
center_vertical
Umieść obiekt na środku kontenera w pionie, nie zmieniając jego rozmiaru. Zachowanie przycięcia
taka sama jak przy grawitacji "center".
fill_vertical
W razie potrzeby zwiększ pionowy rozmiar obiektu, aby wypełnił cały kontener. Gdy clipOrientation ma wartość "vertical", przycinanie nie następuje, ponieważ element rysowalny wypełnia
w pionie (chyba że poziom, który można narysować ma wartość 0, jest wtedy niewidoczny).
center_horizontal
Umieść obiekt na środku kontenera w poziomie, nie zmieniając jego rozmiaru.
Przycinanie działa tak samo jak przy grawitacji "center".
fill_horizontal
W razie potrzeby powiększ obiekt w poziomie, aby wypełnił cały kontener. Kiedy
clipOrientation ma wartość "horizontal", przycinanie nie występuje, ponieważ obiekt rysowalny wypełnia
w poziomie (chyba że poziom, który można przeciągnąć, ma wartość 0, co oznacza, że nie jest widoczny).
center
Umieść obiekt na środku kontenera na osi pionowej i poziomej,
i jego rozmiaru. Gdy clipOrientation ma wartość "horizontal", przycinanie ma miejsce po lewej i prawej stronie. Gdy clipOrientation ma wartość "vertical", przycinanie ma miejsce na górze i na dole.
fill
W razie potrzeby zwiększ rozmiar obiektu w poziomie i pionie, aby wypełnił cały obszar
kontenera. Przycinanie nie występuje, ponieważ element rysowalny wypełnia
w pionie i w poziomie (chyba że poziom, który można przeciągnąć, wynosi 0 – w takim przypadku nie jest
widoczne).
clip_vertical
Dodatkowa opcja, w ramach której można przyciąć górne lub dolne krawędzie elementu podrzędnego
granic swojego kontenera. Klip jest oparty na grawitacji pionowej: górna grawitacja przycina
dolna krawędź grawitacja przycina górną, ale żadna z nich nie przycina obu.
clip_horizontal
Dodatkowa opcja, w ramach której można przyciąć lewe lub prawe krawędzie elementu podrzędnego
granic swojego kontenera. Klip jest oparty na grawitacji poziomej: lewa grawitacja
prawa grawitacja przycina lewą krawędź, ale żadna z nich nie przycina obu.
Zwiększenie poziomu spowoduje zmniejszenie liczby przycięć i powolne wyświetlenie obrazu. Oto i ona
na poziomie 7000:
Uwaga: domyślny poziom to 0, co oznacza, że obraz jest całkowicie przycięty.
nie jest widoczny. Przy poziomie 10 000 obraz nie jest przycięty i jest w pełni widoczny.
Wymagane. Określa skalę, którą można rysować. Musi to być element główny.
Atrybuty:
xmlns:android
Ciąg znaków. Wymagane. Definiuje przestrzeń nazw XML, którą musi być
"http://schemas.android.com/apk/res/android"
android:drawable
Zasób rysowalny. Wymagany. Odniesienie do elementu rysowalnego
.
android:scaleGravity
Słowo kluczowe. Określa pozycję grawitacji po skalowaniu.
Musi to być co najmniej jedna z tych wartości stałych rozdzielonych znakiem |:
Wartość
Opis
top
Umieść obiekt na górze kontenera, nie zmieniając jego rozmiaru.
bottom
Umieść obiekt na dole kontenera, nie zmieniając jego rozmiaru.
left
Umieść obiekt przy lewej krawędzi kontenera, nie zmieniając jego rozmiaru. To jest
wartość domyślną.
right
Umieść obiekt przy prawej krawędzi kontenera, nie zmieniając jego rozmiaru.
center_vertical
Umieść obiekt na środku kontenera w pionie, nie zmieniając jego rozmiaru.
fill_vertical
W razie potrzeby zwiększ pionowy rozmiar obiektu, aby wypełnił cały kontener.
center_horizontal
Umieść obiekt na środku kontenera w poziomie, nie zmieniając jego rozmiaru.
fill_horizontal
W razie potrzeby powiększ obiekt w poziomie, aby wypełnił cały kontener.
center
Umieść obiekt na środku kontenera na osi pionowej i poziomej,
i jego rozmiaru.
fill
W razie potrzeby zwiększ rozmiar obiektu w poziomie i pionie, aby wypełnił cały obszar
kontenera.
clip_vertical
Dodatkowa opcja, w ramach której można przyciąć górne lub dolne krawędzie elementu podrzędnego
granic swojego kontenera. Klip jest oparty na grawitacji pionowej: górna grawitacja przycina
dolna krawędź grawitacja przycina górną, ale żadna z nich nie przycina obu.
clip_horizontal
Dodatkowa opcja, w ramach której można przyciąć lewe lub prawe krawędzie elementu podrzędnego
granic swojego kontenera. Klip jest oparty na grawitacji poziomej: lewa grawitacja
prawa grawitacja przycina lewą krawędź, ale żadna z nich nie przycina obu.
android:scaleHeight
Procent. Wysokość skali wyrażona jako procent wartości elementu, który można narysować
związane. Format wartości to XX%, np.100% lub 12,5%.
android:scaleWidth
Procent. Szerokość skali wyrażona jako procent elementu, który można narysować
związane. Format wartości to XX%, np.100% lub 12,5%.
Wymagane. Kształt, który można rysować. Musi to być element główny.
Atrybuty:
xmlns:android
Ciąg znaków. Wymagane. Definiuje przestrzeń nazw XML, którą musi być
"http://schemas.android.com/apk/res/android"
android:shape
Słowo kluczowe. Określa typ kształtu. Prawidłowe wartości to:
Wartość
Opis
"rectangle"
Prostokąt, który wypełnia widok główny. To jest domyślny kształt.
"oval"
Owal, który pasuje do wymiarów widoku, który zawiera.
"line"
Pozioma linia rozciągająca się wzdłuż szerokości widoku, który zawiera. Ten
kształt wymaga elementu do określenia szerokości
.
"ring"
Okrągły kształt.
Te atrybuty są używane tylko wtedy, gdy android:shape="ring":
android:innerRadius
Wymiar. Promień dla
wewnętrznej części pierścienia (otwór w środku) jako wartość wymiaru lub zasób wymiaru.
android:innerRadiusRatio
Swobodna. Promień obszaru wewnętrznego
i jego części, wyrażony jako stosunek szerokości pierścienia. Na przykład jeśli chodzi o android:innerRadiusRatio="5", promień wewnętrzny jest równy szerokości pierścienia podzielonego przez 5. Ten
została zastąpiona przez android:innerRadius. Wartością domyślną jest 9.
android:thickness
Wymiar. Grubość
pierścień, jako wartość wymiaru lub zasób wymiaru.
android:thicknessRatio
Swobodna. Grubość pierścienia
wyrażony jako stosunek szerokości pierścienia. Jeśli na przykład android:thicknessRatio="2", to
grubość równa się szerokości pierścienia podzielonego przez 2. Ta wartość została zastąpiona przez android:innerRadius. Wartością domyślną jest 3.
android:useLevel
Wartość logiczna. Wartość prawda, jeśli jest używana jako
LevelListDrawable. Zwykle ma wartość fałsz,
W przeciwnym razie kształt może się nie pojawić.
Tworzy zaokrąglone narożniki kształtu. Ma zastosowanie tylko wtedy, gdy kształt jest prostokątny.
Atrybuty:
android:radius
Wymiar. Promień wszystkich narożników jako wartość wymiaru lub zasób wymiaru. Ta wartość jest zastępowana dla każdego
pod kątem tych atrybutów.
android:topLeftRadius
Wymiar. Promień lewego górnego rogu jako wartość wymiaru lub zasób wymiaru.
android:topRightRadius
Wymiar. Promień prawego górnego rogu ekranu jako wartość wymiaru lub zasób wymiaru.
android:bottomLeftRadius
Wymiar. Promień lewego dolnego rogu jako wartość wymiaru lub zasób wymiaru.
android:bottomRightRadius
Wymiar. Promień prawego dolnego rogu jako wartość wymiaru lub zasób wymiaru.
Uwaga: każdy róg musi początkowo mieć róg.
promień jest większy niż 1 lub żadne narożniki nie są zaokrąglane. Jeśli chcesz mieć konkretne narożniki
aby nie być zaokrąglane, możesz obejść ten problem, używając android:radius do ustawienia narożnika domyślnego.
większy od 1, a następnie zastąp każdy narożnik wartościami, które
i ustaw 0 („0dp”) w miejscach, gdzie rogi nie mają być zaokrąglone.
Określa kolor gradientu kształtu.
Atrybuty:
android:angle
Liczba całkowita. Kąt gradientu w stopniach. 0 od lewej do prawej, 90 to
od dołu do góry. Musi to być wielokrotność liczby 45. Wartość domyślna to 0.
android:centerX
Swobodna. Względna pozycja na osi X środka gradientu (0–1,0).
android:centerY
Swobodna. Względna pozycja Y środka gradientu (0–1,0).
android:centerColor
Kolor. Opcjonalny kolor występujący między kolorem początkowym i końcowym.
wartość szesnastkową lub zasób koloru.
android:endColor
Kolor. Kolor końcowy w postaci szesnastkowej.
lub zasób koloru.
android:gradientRadius
Swobodna. Promień gradientu. Stosowane tylko wtedy, gdy android:type="radial".
android:startColor
Kolor. Kolor początkowy w postaci szesnastkowej
lub zasób koloru.
android:type
Słowo kluczowe. Typ stosowanego wzorca gradientu. Prawidłowe wartości to:
Wartość
Opis
"linear"
Gradient liniowy. Jest to ustawienie domyślne.
"radial"
Gradient promieniowy. Kolor początkowy to kolor środkowy.
"sweep"
Duży gradient linii.
android:useLevel
Wartość logiczna. Prawda, jeśli jest używana jako LevelListDrawable.
Dopełnienie stosowane do elementu widoku danych. Spowoduje to wypełnienie pozycji widoku
a nie kształt.
Atrybuty:
android:left
Wymiar. Dopełnienie z lewej strony jako wartość wymiaru lub zasób wymiaru.
android:top
Wymiar. Dopełnienie u góry jako wartość wymiaru lub zasób wymiaru.
android:right
Wymiar. Dopełnienie z prawej strony jako wartość wymiaru lub zasób wymiaru.
android:bottom
Wymiar. Dopełnienie u dołu jako wartość wymiaru lub zasób wymiaru.
Rozmiar kształtu.
Atrybuty:
android:height
Wymiar. Wysokość kształtu jako wartość wymiaru lub zasób wymiaru.
android:width
Wymiar. Szerokość kształtu jako wartość wymiaru lub zasób wymiaru.
Uwaga: domyślnie kształt jest skalowany do rozmiaru kontenera.
wyświetlane proporcjonalnie do zdefiniowanych tutaj wymiarów. Gdy używasz kształtu w elemencie ImageView, możesz ograniczyć skalowanie przez ustawienie atrybutu android:scaleType na "center".
Jednolity kolor wypełnienia kształtu.
Atrybuty:
android:color
Kolor. Kolor, który zostanie zastosowany do kształtu w formacie szesnastkowym.
lub zasób koloru.
Linia przerywana kształtu.
Atrybuty:
android:width
Wymiar. Grubość linii jako wartość wymiaru lub zasób wymiaru.
android:color
Kolor. Kolor linii,
wartość szesnastkową lub zasób koloru.
android:dashGap
Wymiar. Odległość między myślnikami wiersza w formie wartości wymiaru lub zasobu wymiaru. Tej formuły można użyć tylko wtedy, gdy skonfigurowano ustawienie android:dashWidth.
android:dashWidth
Wymiar. Rozmiar każdej linii przerywanej jako wartość wymiaru lub zasób wymiaru. Tej formuły można użyć tylko wtedy, gdy skonfigurowano ustawienie android:dashGap.
przykład:
Plik XML zapisany o res/drawable/gradient_box.xml:
Treść strony i umieszczone na niej fragmenty kodu podlegają licencjom opisanym w Licencji na treści. Java i OpenJDK są znakami towarowymi lub zastrzeżonymi znakami towarowymi należącymi do firmy Oracle lub jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2024-08-23 UTC.
[[["Łatwo zrozumieć","easyToUnderstand","thumb-up"],["Rozwiązało to mój problem","solvedMyProblem","thumb-up"],["Inne","otherUp","thumb-up"]],[["Brak potrzebnych mi informacji","missingTheInformationINeed","thumb-down"],["Zbyt skomplikowane / zbyt wiele czynności do wykonania","tooComplicatedTooManySteps","thumb-down"],["Nieaktualne treści","outOfDate","thumb-down"],["Problem z tłumaczeniem","translationIssue","thumb-down"],["Problem z przykładami/kodem","samplesCodeIssue","thumb-down"],["Inne","otherDown","thumb-down"]],["Ostatnia aktualizacja: 2024-08-23 UTC."],[],[]]