在操作栏和自定义相机视图上投影

时间:2012-01-04 15:31:21

标签: android

目前,我有以下应用程序,其中包含一个ActionBar和一个自定义视图。看起来像这样

enter image description here

我尝试在

上实现投影效果
  1. 操作栏(使用ActionBarSherlock中的库)
  2. 自定义相机视图
  3. 通过使用“9补丁”技术,我可以在操作栏上删除阴影,但不能自定义视图。

    这是我正在使用的技术。我将windowContentOverlay特定为“9补丁”图像。根据文档,这是windowContentOverlay使用的内容。

      

    此Drawable覆盖在Window内容的前景上   区域,通常在标题下方放置一个阴影。

    我希望操作栏和自定义视图都归类为Drawable。通过在整个活动中使用以下样式

    值/ styles.xml

    <resources>
        <style name="AppTheme" parent="@style/Theme.Sherlock.Light">
            <item name="android:windowContentOverlay">@drawable/actionbar_shadow</item>
        </style>
    </resources>
    

    的AndroidManifest.xml

    <application android:theme="@styles/AppTheme">
    

    actionbar_shadow.9.png

    enter image description here

    但是,我只能在操作栏上看到阴影,但不能看到自定义相机视图。

    有关信息,这是我如何布置我唯一的活动。

    布局/ main.xml中

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical"
        android:gravity="center" >
    
        <view xmlns:android="http://schemas.android.com/apk/res/android"
            class="org.yccheok.gui.CustomView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
        />
    
    </LinearLayout>
    

    我很想知道,为什么windowContentOverlay技术可用于操作栏,而不是我的自定义相机视图?

1 个答案:

答案 0 :(得分:3)

您可以使用以下方法删除操作栏阴影:

<item name="android:windowContentOverlay">@null</item>