如何在android中给FragmentTabHost底部阴影?

时间:2016-12-09 08:54:23

标签: android xml fragment android-tabhost shadow

嗨,我想在我片段中的tabhost中留下阴影。我的XML代码是

 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:layout_marginTop="60dip"
>
<android.support.v4.app.FragmentTabHost
    android:id="@android:id/tabhost"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" >
   <FrameLayout
        android:id="@android:id/tabcontent"
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_weight="0" />
</android.support.v4.app.FragmentTabHost>
<FrameLayout
    android:id="@+id/realtabcontent"
    android:layout_width="match_parent"
    android:layout_height="0dip"
    android:layout_weight="1" />
</LinearLayout>

我在stackoverflow上尝试了所有可用的解决方案,但它不起作用。请帮忙。

3 个答案:

答案 0 :(得分:1)

enter image description here Android中没有此类属性可显示阴影。但可能的方法是:

  1. 添加一个灰色的普通LinearLayout,在其上添加您的实际布局,底部边距为1或2 dp

  2. 使用带阴影的9补丁图像并将其设置为线性布局的背景

  3. 试试这个..创建layout_shadow.xml并放入drawable文件夹

    <?xml version="1.0" encoding="utf-8"?>
    <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
        <item>
            <shape android:shape="rectangle">
                <solid android:color="#CABBBBBB"/>
                <corners android:radius="2dp" />
            </shape>
        </item>
    
        <item
            android:left="0dp"
            android:right="0dp"
            android:top="0dp"
            android:bottom="2dp">
            <shape android:shape="rectangle">
                <solid android:color="@android:color/white"/>
                <corners android:radius="2dp" />
            </shape>
        </item>
    </layer-list>
    

    像这样适用于您的布局

     android:background="@drawable/layout_shadow"
    

    标签主持人的最终布局

    <android.support.v4.app.FragmentTabHost
    android:id="@android:id/tabhost"
    android:background="@drawable/layout_shadow"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" >
    

    如果不能让我知道

答案 1 :(得分:0)

Layer-list drawable是通过在后台设置为视图提供阴影效果的方法之一。

请按照此link为视图创建不同的drawable,并查看此链接中提到的View Box Shadows

答案 2 :(得分:0)

由于我使用的是fragmenttabhost,因此无法操纵其视图。