Próbuję, nieco sklonować projekt działania z zestawu slajdów na temat projektu interfejsu użytkownika Androida . Mam jednak problem z bardzo prostym zadaniem.
Utworzyłem układ, jak pokazano na obrazku, a nagłówek to TextView
a RelativeLayout
. Teraz chcę zmienić kolor tła RelativeLayout
, ale nie wydaje mi się, aby wymyślić, jak to zrobić.
Wiem, że mogę ustawić android:background
właściwość w RelativeLayout
znaczniku w pliku XML, ale co mam ustawić? Chcę zdefiniować nowy kolor, którego mogę używać w wielu miejscach. Czy to jest drawable
a string
?
Ponadto spodziewałbym się, że w projektancie interfejsu użytkownika systemu Android Eclipse będzie bardzo prosty sposób, którego muszę brakować?
Jestem trochę sfrustrowany, ponieważ powinna to być czynność wykonywana maksymalnie za pomocą kilku kliknięć. Tak więc każda pomoc jest bardzo doceniana. :)
źródło
Odpowiedzi:
Możesz użyć prostych zasobów kolorów , określonych zwykle w środku
res/values/colors.xml
.i użyj tego przez
android:background="@color/red"
. Ten kolor może być również używany gdziekolwiek indziej, np. Jako kolor tekstu. Odwołaj się do niego w XML w ten sam sposób lub pobierz za pomocą kodugetResources().getColor(R.color.red)
.Możesz także użyć dowolnego zasobu do rysowania jako tła, użyj
android:background="@drawable/mydrawable"
do tego (to znaczy 9-częściowych drawables, normalne bitmapy, drawable kształtów, ...).źródło
ANDROID_SDK\samples
folderze (dla różnych wersji Androida). Cała przykładowa aplikacja API jest również wstępnie instalowana w każdej instancji emulatora.Powyższe odpowiedzi są miłe. Możesz również tak postępować programowo, jeśli chcesz
Po pierwsze, twój układ powinien mieć identyfikator. Dodaj go, pisząc następujący
+id
wiersz w res / layout / *. XmlNastępnie w kodzie Java wprowadź następujące zmiany.
poza tym, jeśli masz kolor zdefiniowany w colors.xml, możesz także zrobić programowo:
źródło
Możesz użyć
android:background="#DC143C"
lub dowolnych innych wartości RGB dla swojego koloru. Nie mam problemu z wykorzystaniem go w ten sposób, jak podano tutajźródło
The
przykład nie działał dla mnie, ale
pracował dla mnie w elemencie układu względnego jako atrybut.
źródło
Jeśli chcesz szybko zmienić kolor (i nie masz zapamiętanych numerów heksadecymalnych), Android ma kilka gotowych kolorów, do których możesz uzyskać dostęp w następujący sposób:
Dostępnych jest 15 kolorów, z których można szybko przetestować i nie trzeba konfigurować dodatkowych plików.
Konfigurowanie pliku values / colors.xml i używanie prostego Hex, jak wyjaśniono powyżej, nadal będzie działać.
źródło
4 możliwe sposoby, użyj jednego, którego potrzebujesz.
1. Kotlin
2. Powiązanie danych
LUB bardziej przydatne oświadczenie
3. XML
4. Java
źródło
Android studio 2.1.2 (lub być może wcześniej) pozwala wybierać z koła kolorów:
Mam to, dodając następujące do mojego układu:
Następnie kliknąłem kolor FFFFFF i kliknąłem żarówkę, która się pojawiła.
źródło
Kotlin
lub
-
źródło
Odpowiedzi są przede wszystkim statyczne. Myślałem, że udzielę dynamicznej odpowiedzi. Dwa pliki, które będą musiały być zsynchronizowane, są względne
foo.xml
z układem iactivity_bar.java
odpowiadają odpowiadającej temu klasie JavaR.layout.foo
.W
foo.xml
ustawieniu identyfikatora dla całego układu:I w
activity_bar.java
zestawie kolor wonCreate()
:Mam nadzieję, że to pomoże.
źródło