2014-02-02 5 views
0

Я застрял в создании вкладок верхней панели Android и панели поиска, как показано ниже.Нужна помощь в верхних вкладках бара Android.

enter image description here

Я уже создал простые вкладки с текстом, но линия выбранного показана обратная сторона. Теперь проблема состоит в том, чтобы показать значки с, и строка выбора должна отображаться вверх? Как мне это сделать?

ответ

1

Вы можете использовать пользовательский вид, содержащий линейный макет и изображение. Я использую TextView и в линейном атрибуте макета фона, я добавил растяжимый, который является селектором для выбранной вкладки: -

<?xml version="1.0" encoding="utf-8"?> 

<TextView 
    android:id="@+id/tabsText" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:background="@drawable/tab_text_bg" 
    android:gravity="center" 
    android:paddingBottom="@dimen/dashboardtabpadding" 
    android:paddingTop="@dimen/dashboardtabpadding" 
    android:shadowColor="@android:color/white" 
    android:shadowDx="1.0" 
    android:shadowDy="1.0" 
    android:shadowRadius="2.5" 
    android:textColor="@color/dashboard_tab_selector" 
    android:textSize="@dimen/dashboardtab_heading_Text" 
    android:textStyle="bold" /> 

tab_bg_selector.xml

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <!-- Active tab --> 
    <item 
     android:state_selected="true" 
     android:state_focused="false" 
     android:state_pressed="false" 
     android:drawable="@drawable/tab_bg_selected" 
    /> 
    <!-- Inactive tab --> 
    <item 
     android:state_selected="false" 
     android:state_focused="false" 
     android:state_pressed="false" 
     android:drawable="@drawable/tab_bg_unselected" 
    /> 
</selector> 

и для этой зеленой части вы можете использовать список слоев для выбранной и невыделенной вкладки. Вы можете google в списке слоев. Вы можете использовать ниже для выбранной вкладки: -

tab_bg_selected.xml

<!-- "background shadow" --> 
<item> 
    <shape android:shape="rectangle" > 
     <solid android:color="#C1C1C1" /> 

    </shape> 
</item> 
<!-- background color --> 
<item 
    android:top="5px"> 
    <shape android:shape="rectangle" > 
     <solid android:color="#202222" /> 

    </shape> 
</item> 

и в вашей основной деятельности, вы можете надуть выше макет и использовать его в методе setIndicator(View view).

Надеюсь, у вас это есть.

Смежные вопросы