2017-11-07 4 views
3

광고 항목의 버튼을 사용하여 다른 작업을 수행하는 목록을 가지고 항목 목록을 탭하려고합니다. 여기 MvvmCross 목록 - 항목 및 버튼을 클릭하십시오.

는 항목의 응답 목록 여기

<Mvx.MvxListView 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:id="@+id/RecapResponsesListView" 
    local:MvxBind="ItemsSource ReponsesRecapList; ItemClick GoToLandscapeQuestion;" 
    local:MvxItemTemplate="@layout/item_response" /> 

입니다 :

[...] 
<Button 
    android:id="@+id/ResponseValidate" 
    android:layout_width="0dp" 
    android:layout_height="wrap_content" 
    android:layout_weight="20" 
    android:layout_gravity="center" 
    android:gravity="center" 
    android:text="Valider" 
    local:MvxBind="Click ConfirmResponseCommand; Enabled ConfirmButtonEnabled" /> 
</LinearLayout> 

내 버튼을 아무 문제없이, 나는 그것을 활용할 수 잘 작동하지만 내가 그것을 추가하기 때문에, 인 itemClick 더 이상 작동하지 않습니다. 항목에서 내 버튼을 제거 할 수 있으며 ItemClick이 다시 작동하므로이 탭을 구현하지는 않습니다. 나는 단추를 추가하는 것이 항목 클릭을 차단한다고 생각합니다. ...

왜, 어떻게 수정해야합니까?

감사합니다.

답변

4

이것은 실제로 MvvmCross 문제가 아니지만 포커스가있는 문제와 자손이 Android에서 터치 이벤트를받는 방법입니다.

당신은 버튼을 컨테이너에

android:descendantFocusability="blocksDescendants" 

를 추가하여 문제를 해결 할 수 있어야한다. 버튼이 ImageButton이 아닌 경우 단순히 버튼 선언에

android:focusable="false" 
android:focusableInTouchMode="false" 

을 추가하려면 다른 방법으로, 충분한 수 있습니다.

+1

감사합니다. 두 번째 솔루션을 사용했고 효과가있었습니다! – zarghol

관련 문제