我有一个可点击的Relativelayout
。我有一个元素(ImageButton
),我也想点击它。
布局是可以点击的,直到我添加了ImageButton
;现在只有可点击的了。
我在两个元素中尝试了focusable
和focusableInTouchMode
= true
和false
的所有组合(我只在xml
布局中尝试过)。如何才能使它们同时点击?
我的代码;请注意,这是在ListView
内,每行都有这个;这是一个不可点击的LinearLayout
:
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/row_selector"
android:duplicateParentState="true"
android:paddingBottom="10dp" >
// several TextViews edited out
<ImageButton
android:id="@+id/ibMenu"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:background="@color/row_overflow_state"
android:contentDescription="menu"
android:src="@drawable/ic_action_overflow" />
</RelativeLayout>
答案 0 :(得分:1)
将此用于您的父母
android:addStatesFromChildren="true"
如果使用此功能,请不要使用以下内容,否则会出现卡住溢出异常
如何将此设置为您的孩子
android:duplicateParentState="true"
答案 1 :(得分:0)
设置android:descendantsFocusability =“blockDescendants” RelativeLayout的
答案 2 :(得分:0)
我遇到了同样的问题。我有一个矩形视图,它必须接收其他功能的点击,并且矩形内的actions.searchResults(name, () => ({ auth: { token: "test" } }))
必须接收其他功能的点击。
在undefined
为token = getState && getState().auth.token
并具有属性的情况下,将ImageView
用于此目的
Relative Layout
这意味着该布局仅在其后代都不想要时才会获得焦点。
因此,父级和子级都可以点击以使用两种不同的功能。