Android: установить щелчок цвет вкладки в цвет фона TableRow - PullRequest
3 голосов
/ 20 мая 2011

У меня есть TabLayout. В этом у меня есть таблица с динамически добавленными строками. Когда TableRow выделен / нажат, я хочу установить цвет фона на Нажатие или Щелчок на вкладке.

Я не хочу устанавливать статический цвет, но хочу использовать цвет темы по умолчанию. Как получить информацию о цвете Tablayout?

Как обращаться с левой и правой стороной вкладок? Вот что я получаю, и после установки tab_background.xml в качестве th backgroundRsourse для всех вкладок: Tab bg settings

На левой стороне оба изображения без каких-либо настроек, но правый и левый углы сглажены. С правой стороны, оба изображения с настройками, углы выбранных вкладок - это просто квадрат, они должны быть закруглены или выглядят так же, как и без каких-либо настроек. Кажется, я должен использовать tab_selected_bar_right и tab_selected_bar_left. Я скопировал их в мой Drawable, но не могу понять, как их использовать. Какие настройки дать в формате xml ниже предоставлено @ mudit.

Пожалуйста, ведите меня. Любая помощь высоко ценится. Я спешу.

Спасибо

Ответы [ 2 ]

5 голосов
/ 20 мая 2011

Добавьте этот код после добавления вкладок в файл Java:

(я добавляю только 2 вкладки, вы можете добавить это, если у вас есть больше вкладок)

TabWidget tw = getTabWidget();

View tab1View = tw.getChildAt(0);
tab1View.setBackgroundResource(R.drawable.tab_background);

View tab2View = tw.getChildAt(1);
tab2View.setBackgroundResource(R.drawable.tab_background);

Код tab_background.xml:

(поместите это в папку для рисования)

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_focused="false" android:state_selected="false"
        android:state_pressed="false"
        android:drawable="@drawable/tab_bg" />

    <item android:state_focused="false" android:state_selected="true"
        android:state_pressed="false" android:drawable="@drawable/tab_selected" />

    <item android:state_focused="true" android:state_selected="false"
        android:state_pressed="false"
        android:drawable="@drawable/tab_bg" />

    <item android:state_focused="true" android:state_selected="true"
        android:state_pressed="false" android:drawable="@drawable/tab_selected" />

    <item android:state_pressed="true"
        android:drawable="@drawable/tab_selected" />
</selector> 
0 голосов
/ 03 февраля 2012

Решена с этой проблемой. Я извиняюсь за то, что не упомянул это ранее. Извините, я просто пропустил. @Yugandhar, спасибо за ваш интерес.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...