透明的TabWidget android

时间:2015-05-13 11:36:12

标签: android xml android-style-tabhost

我想让TabWidget 透明。我以编程方式(MainActivity class)尝试了它,但没有成功。我在蓝色(例如XML)上使用Alpha通过#D9214075进行了尝试。它不起作用

这是 activity_main.xml

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

    <TabHost
        android:id="@android:id/tabhost"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" >

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:orientation="vertical" 
            >

            <FrameLayout
                android:id="@android:id/tabcontent"
                android:layout_width="fill_parent"
                android:layout_height="0dip"
                android:layout_weight="1" 
                />

            <TabWidget
                android:id="@android:id/tabs"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="0"
                android:showDividers="none"
                android:fadingEdge="none"
                android:background="#D9214075" />

        </LinearLayout>
    </TabHost>



</RelativeLayout>

这是MainActivity代码:

public class MainActivity extends TabActivity {
    TabHost tabHost;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);



        tabHost = getTabHost();  
        setTabs();
    } 

    private void setTabs()
    { 
        addTab("", R.drawable.tab_news, newss.News.class);
        addTab("", R.drawable.tab_servises, servises.Services.class);

            addTab("", R.drawable.tab_profile, profile.Profile.class);



        addTab("", R.drawable.tab_contacts, contacts.Contacts.class);
    }

    private void addTab(String labelId, int drawableId, Class<?> c)
    {
        Intent intent = new Intent(getApplicationContext(), c);
        TabHost.TabSpec spec = tabHost.newTabSpec("tab" + labelId); 

        View tabIndicator = LayoutInflater.from(this).inflate(R.layout.tab_indicator, getTabWidget(), false);
        TextView title = (TextView) tabIndicator.findViewById(R.id.title);
        title.setText(labelId);
        ImageView icon = (ImageView) tabIndicator.findViewById(R.id.icon); 
        icon.setImageResource(drawableId);      
        spec.setIndicator(tabIndicator);
        spec.setContent(intent);
        tabHost.addTab(spec);
    }





}

1 个答案:

答案 0 :(得分:0)

它的工作,修复activity_main.xml

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

    <TabHost
        android:id="@android:id/tabhost"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" >

        <RelativeLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:orientation="vertical" 
           >

            <FrameLayout
                android:id="@android:id/tabcontent"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:layout_weight="1" 
                />

            <TabWidget
                android:id="@android:id/tabs"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="0"
                android:showDividers="none"
                android:fadingEdge="none"
                android:layout_alignParentBottom="true"
                android:background="#D92a5094" />
        </RelativeLayout>

    </TabHost>
</RelativeLayout>