我的布局XML如下:
<LinearLayout
android:id="@+id/leftBtnWrapper"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:paddingRight="25dp"
android:clickable="true"
android:orientation="horizontal"
android:gravity="center_vertical"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:orientation="vertical"
android:gravity="center"
android:duplicateParentState="true">
<ImageView
android:id="@+id/leftImageBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/btn_navbar"
android:layout_gravity="center_vertical"
android:padding="0dp"
android:clickable="true"
android:duplicateParentState="true"/>
</LinearLayout>
<View
android:layout_width="1.5dp"
android:layout_height="match_parent"
android:background="@drawable/ver_separator"
android:layout_marginLeft="1dip"
android:duplicateParentState="true"/>
我希望在单击leftBtnWrapper
时触发一个函数。但是,当我触摸leftImageBtn
ImageView的任何部分时,它不会触发我的函数。有什么线索我错过了吗?
编辑::
通过在左上角取framelayout并应用frameLayout的onClick来解决问题。 布局如下::
<LinearLayout
android:id="@+id/leftBtnWrapper"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:clickable="true"
android:gravity="center_vertical"
android:orientation="horizontal" >
<ImageView
android:id="@+id/leftImageBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@drawable/btn_navbar"
android:clickable="true"
android:duplicateParentState="true"
android:layout_margin="8dp" />
<View
android:layout_width="1.5dp"
android:layout_height="match_parent"
android:background="@drawable/ver_separator"
android:duplicateParentState="true" />
</LinearLayout>
<FrameLayout
android:id="@+id/leftBtnLayer"
android:layout_width="70dp"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:background="@android:color/transparent"
android:clickable="true" >
</FrameLayout>
FrameLayout
并将onClick
操作与FrameLayout
绑定来解决了问题。我已经编辑了上面的问题。 - hemu