Rajesh Satvara
Rajesh Satvara

Reputation: 3964

Need Help for TabHost Design

Originally I need like this

My currant tabhost is

I need My TabHost Look like That First One. Xml file code for Corner is :

<selector
    xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_selected="true">
        <shape android:shape="rectangle">
            <corners
                android:topLeftRadius="10dp"
                android:bottomLeftRadius="10dp"/>
            <gradient
                android:startColor="#88a9a9a9"
                android:endColor="#000"
                android:gradientRadius="400"
                android:angle="270"/>
        </shape>
    </item>
    <item>
        <shape android:shape="rectangle">
            <gradient
                android:angle="90"
                android:startColor="#880f0f10"
                android:centerColor="#8858585a"
                android:endColor="#88a9a9a9"/>
            <corners
                android:topRightRadius="10dp"
                android:bottomLeftRadius="10dp"/>
        </shape>
    </item></selector>

Java code line :

mTabHost.getTabWidget().getChildAt(0).setBackgroundResource(R.drawable.roundcorner);`

Upvotes: 0

Views: 89

Answers (1)

Aditya Vyas-Lakhan
Aditya Vyas-Lakhan

Reputation: 13555

Try this way, for left side First one :-

<item android:state_selected="true">
    <shape android:shape="rectangle">
        <corners
            android:topLeftRadius="5dp"
            android:bottomLeftRadius="5dp"/>
        <gradient
            android:startColor="#880f0f10"
            android:endColor="#000"
            android:gradientRadius="400"
            android:angle="-270"/>
        <stroke android:width="3px" android:color="@color/black" />
    </shape>
</item>

<item>
    <shape android:shape="rectangle">
        <gradient
            android:angle="90"
            android:startColor="#CCCCCC"
            android:centerColor="#CCCCCC"
            android:endColor="#CCCCCC"/>
        <corners
            android:topLeftRadius="5dp"
            android:bottomLeftRadius="5dp"/>
        <stroke android:width="5px" android:color="@color/black" />
    </shape>
</item>

Right side Last one :-

<selector
    xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_selected="true">
        <shape android:shape="rectangle">
            <corners
                android:topRightRadius="5dp"
                android:bottomRightRadius="5dp"/>
            <gradient
                android:startColor="#880f0f10"
                android:endColor="#000"
                android:gradientRadius="400"
                android:angle="-270"/>

        </shape>
    </item>
    <item>
        <shape android:shape="rectangle">
            <gradient
                android:angle="90"
                android:startColor="#CCCCCC"
                android:centerColor="#CCCCCC"
                android:endColor="#CCCCCC"/>
            <corners
                android:topRightRadius="5dp"
                android:bottomRightRadius="5dp"/>
            <stroke android:width="5px" android:color="@color/black" />
        </shape>
    </item></selector>

for center

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

    <item android:state_selected="true">
        <shape android:shape="rectangle">
            <gradient
                android:startColor="#880f0f10"
                android:endColor="#000"
                android:gradientRadius="400"
                android:angle="-270"/>
        </shape>
    </item>
    <item>
        <shape android:shape="rectangle">
            <gradient
                android:angle="90"
                android:startColor="#CCCCCC"
                android:centerColor="#CCCCCC"
                android:endColor="#CCCCCC"/>
            <stroke android:width="5px" android:color="@color/black" />
        </shape>
    </item></selector>

and in Java

    mTabHost.getTabWidget().getChildAt(0).setBackgroundResource(R.drawable.roundcorner_tab_left);
    mTabHost.getTabWidget().getChildAt(1).setBackgroundResource(R.drawable.roundcorner_tab_center);
    mTabHost.getTabWidget().getChildAt(2).setBackgroundResource(R.drawable.roundcorner_tab_right);

Upvotes: 2

Related Questions