Android 可点击的透明工具栏
Android clickable transparent toolbar
我在 activity 中添加了一个透明工具栏,效果很好。问题是我想点击工具栏下的一个元素。尽管该元素是可见的(因为工具栏是透明的),但我无法单击该元素,因为该事件正在被工具栏捕获。
我该如何解决这种行为?
我的xml代码是:
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentTop="true"/>
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
style="@style/Theme.Transparent"
android:layout_height="@dimen/topbar"
android:layout_width="match_parent"
android:background="?attr/colorPrimary"
android:layout_alignParentTop="true" />
</RelativeLayout>
正如我所说,它在片段上显示了透明的工具栏,但我无法单击工具栏下方的元素。
提前致谢!
您可以添加 android:clickable="false"
以不捕获工具栏上的点击或使用自定义 OnTouchListener
。
我回答我自己的问题。我创建了一个扩展工具栏的自定义工具栏视图,它覆盖了 onTouchEvent 方法,如下所示:
@Override
public boolean onTouchEvent(MotionEvent ev) {
return false;
}
现在一切正常。
我在 activity 中添加了一个透明工具栏,效果很好。问题是我想点击工具栏下的一个元素。尽管该元素是可见的(因为工具栏是透明的),但我无法单击该元素,因为该事件正在被工具栏捕获。 我该如何解决这种行为?
我的xml代码是:
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentTop="true"/>
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
style="@style/Theme.Transparent"
android:layout_height="@dimen/topbar"
android:layout_width="match_parent"
android:background="?attr/colorPrimary"
android:layout_alignParentTop="true" />
</RelativeLayout>
正如我所说,它在片段上显示了透明的工具栏,但我无法单击工具栏下方的元素。
提前致谢!
您可以添加 android:clickable="false"
以不捕获工具栏上的点击或使用自定义 OnTouchListener
。
我回答我自己的问题。我创建了一个扩展工具栏的自定义工具栏视图,它覆盖了 onTouchEvent 方法,如下所示:
@Override
public boolean onTouchEvent(MotionEvent ev) {
return false;
}
现在一切正常。