#android #background #gradient #shape
#Android #фон #градиент #фигуры
Вопрос:
вот некоторое поведение пользовательского интерфейса, которое я не понимаю…
Чего я хочу:
Что я получил:
Мой код:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@drawable/black_to_white" />
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@drawable/blue_to_red" />
</LinearLayout>
код фона: (одинаковый код для обоих, за исключением цветов)
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:startColor="#000000"
android:endColor="#ffffff"
android:angle="270" />
</shape>
Как я могу сделать так, чтобы мой 2-й градиент начинался синим в середине экрана?
(Я заметил, что градиент отлично работает в режиме просмотра Android 3.0, но не в других версиях)
Комментарии:
1. Действительно было бы лучше, если бы вы предоставили xml для того, чтобы drawable не работал. Кроме того, вы уже пробовали использовать один и тот же черно-белый фон для обоих framelayouts?
Ответ №1:
Я использую следующий код, и он отлично работает, как вам нужно.
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:startColor="#151B8D"
android:endColor="#ff0000"
android:angle="270" />
</shape>
Ответ №2:
Проблема в том, что вам не хватает альфа-символа в вашем цветовом коде:
#[alpha][red][green][blue]