Je veux avoir EditText
dans le MvxListView
qui a ItemLongClick
de liaison fonctionnant normalement dedans (en utilisant le modèle). Le cadre de développement que j'ai utilisé est MvvmCross
dans Xamarin.Android (écrit en C#
).MvxListVIew Liaison ItemLongClick avec EditText dans
J'ai essayé l'approche normale, et le EditText
semble prendre toutes les focalisables dans l'élément MvxListView
. Cela signifie que le ItemLongClick
ne fonctionne que dans la partie EditText
de l'élément. Il est important de savoir quand je désactive le focusable de EditText
(android:focusable="false"
), le ItemLongClick
fonctionne dans toutes les parties de l'article (en sacrifice de EditText
ne fonctionne pas). La dernière chose que j'ai essayée est android:descendantFocusability="blocksDescendants"
sur mon élément racine (basé sur this answer) de ma mise en page d'article et il agit de la même manière que la désactivation du focusable EditText
.
Voici le code que j'ai écrit.
MvxListView dans .axml
...
<Mvx.MvxListView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
local:MvxItemTemplate="@layout/table_shipment_item_layout"
android:divider="#BCBCBC"
android:dividerHeight="1dp"
android:descendantFocusability="afterDescendants"
android:focusable="false"
local:MvxBind="ItemsSource ScannedItems; ItemLongClick RemoveItemCommand;" />
...
table_shipment_item_layout.axml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:local="http://schemas.android.com/apk/res-auto"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/custom_clickable_item">
...
<EditText
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:textSize="16.0dp"
android:text="5"
android:padding="8.0dp"
android:maxLines="1"
android:singleLine="true"
android:textColor="#000000"
android:textColorHint="#D3D3D3"
android:background="@drawable/custom_textbox"
android:inputType="number|numberDecimal"
android:digits="."
android:layout_gravity="right|center_vertical"
local:MvxBind="Text Quantity;" />
</LinearLayout>
Comme vous pouvez le voir, je me sers du EditText
, afin que les utilisateurs peuvent modifier la quantité de chaque article scanné. Y at-il une solution de contournement pour cela? Je suis également ouvert à une autre méthode en dehors de EditText
dans MvxListView
s'il y en a. Merci d'avance.
Oui, j'ai essayé tous ces 'descendantFocusability' et aucun de ces travaux. Ils sont là parce que je ne l'ai pas enlevé après avoir essayé plusieurs fois. Y a-t-il une autre méthode que vous pourriez suggérer pour surmonter ce problème en fonction de votre expérience? –
voir ma réponse mise à jour. –
Nous vous remercions de votre suggestion. Y at-il un lien ou un tutoriel pour utiliser l'entrée 'Dialog' avec' EditText'? En utilisant 'ScrollView', utilisera-t-il toujours la liaison' local: MvxItemTemplate' et 'ItemsSource'?Si oui, est-ce que le modèle de l'article devrait également être orientable du parent? –