У меня есть 3 счетчика для страны, часового пояса и языка с соответствующими надписями, расположенными одна под другой нижеприведенным образом
Label1 Spinner1
Label2 Spinner2
Label3 Spinner3
Когда нажимаете, скажем, Spinner1
, я хочу, чтобы весь ряд, т.е.измените их цвет фона, скажем, если я возьму его в LinearLayout. Так при щелчке по спиннеру фон должен смениться на синий
Я хочу, вероятно, XML-способ изменения фона всего макета, а не программный, поскольку мне придется кодироватьдля каждого счетчика
Может кто-нибудь сказать мне, как мне изменить весь цвет макета одним щелчком мыши
Я попробовал Spinner.setOnItemSelectedListener
, но это срабатывает только при выборе какого-либо элемента, но я хочумакет для изменения цвета даже при нажатии Spinner
Spinner в макете layout.xml
<LinearLayout
android:id="@+id/linearlay"
android:layout_width="320dp"
android:layout_height="40dp"
android:background="@drawable/bg_spinner_pressed">
<TextView
android:id="@+id/label"
android:layout_height="40dp"
android:layout_marginLeft="15dp"
android:gravity="center_vertical"
android:text="Label"
android:textColor="@color/textColorPrimary"
android:textSize="14dp" />
<Spinner
android:id="@+id/spinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:popupBackground="@color/colorPrimary"
android:textColor="@android:color/white"
android:textSize="20sp"/>
</LinearLayout>
Файл Settings.java
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
Log.e("Techie","----------------------------citizenship1----------------------------");
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
Log.e("Techie","----------------------------citizenship2----------------------------");
}
});
Я ожидаю макетс id linearlay должен изменить свой основной цвет белый, чтобы изменить на синий при нажатии кнопки.пожалуйста, помогите