Android ListView中的EditText不可编辑
我正在尝试使用嵌套在ListView中的EditText视图构建表单。ListView和EditText之间有几个级别的RelativeLayout和LinearLayout对象,但从我所读到的来看,这应该不是问题 我已经尽力了。我已经为我的活动在AndroidManifest中设置了android:WindowsOfInputMode=adjustPan,我也为我的ListView设置了android:DegenantFocusability=BeforeDegenders。我甚至为ListView和EditText之间的所有布局对象都设置了这个值。然而,所有这些似乎都不起作用 我遇到的主要问题是软键盘没有显示,即使我双击文本字段以调出编辑选项,我仍然无法在EditText区域中键入任何内容。我是不是完全用错了对象控件 这是我的ListView对象的布局代码Android ListView中的EditText不可编辑,android,android-layout,android-listview,android-edittext,Android,Android Layout,Android Listview,Android Edittext,我正在尝试使用嵌套在ListView中的EditText视图构建表单。ListView和EditText之间有几个级别的RelativeLayout和LinearLayout对象,但从我所读到的来看,这应该不是问题 我已经尽力了。我已经为我的活动在AndroidManifest中设置了android:WindowsOfInputMode=adjustPan,我也为我的ListView设置了android:DegenantFocusability=BeforeDegenders。我甚至为ListV
<ListView
android:id="@+id/FormlistView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:descendantFocusability="beforeDescendants"
style="@style/KelFormListView" />
这是我的form_list_item.xml文件的布局代码。这是在表单列表中显示的项目
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="120dp"
android:descendantFocusability="beforeDescendants">
<!-- Top Layout -->
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="60dp"
android:weightSum="10"
android:descendantFocusability="beforeDescendants"
android:id="@+id/TopLayout">
<TextView
android:id="@+id/TitleTextView"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="7"
android:gravity="center_vertical"
android:text="Headling Rent (pa)"
android:textSize="16dp"
style="@style/KelFormListItemLabel" />
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="3"
android:weightSum="2"
android:descendantFocusability="beforeDescendants"
android:background="@color/formListItemValueBackgroundColor">
<ImageView
android:id="@+id/CurrencyIconView"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_weight="0"
android:src="@drawable/icon_currency_pound"
android:layout_gravity="center_vertical"
android:layout_marginLeft="5dp" />
<EditText
android:id="@+id/ValueTextView"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="2"
android:gravity="right|center_vertical"
android:text="20,000"
android:textSize="16dp"
android:inputType="number"
android:focusableInTouchMode="true"
android:editable="true"
style="@style/KelFormListItemValue"/>
</LinearLayout>
</LinearLayout>
<!-- Bottom Layout -->
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="60dp"
android:weightSum="10"
android:id="@+id/BottomLayout"
android:descendantFocusability="beforeDescendants"
android:layout_below="@+id/TopLayout">
<TextView
android:id="@+id/BottomTitleTextView"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="7"
android:gravity="center_vertical"
android:text="Headling Rent (pa)"
android:textSize="16dp"
style="@style/KelFormListItemLabel" />
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="3"
android:weightSum="2"
android:descendantFocusability="beforeDescendants"
android:background="@color/formListItemValueBackgroundColor">
<ImageView
android:id="@+id/BottomCurrencyIconView"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_weight="0"
android:src="@drawable/icon_currency_pound"
android:layout_gravity="center_vertical"
android:layout_marginLeft="5dp" />
<EditText
android:id="@+id/BottomValueTextView"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="2"
android:gravity="right|center_vertical"
android:text="20,000"
android:textSize="16dp"
android:inputType="number"
android:focusableInTouchMode="true"
android:editable="true"
style="@style/KelFormListItemValue"/>
</LinearLayout>
</LinearLayout>
</RelativeLayout>
好吧,我自己解决了问题。主要问题与我的任何代码都无关。问题实际上是模拟器本身的问题。在Android ADV中创建新的虚拟设备时,有一个名为Enable Keyboard的设置,或者类似的设置。此设置允许您在emulator中使用硬件键盘,但它会阻止显示软键盘。那是我的问题 在我看来,这个设置很容易引起混淆,因为直到你显示了高级设置,它才会出现。在我看来,谷歌的某个人做出的这个决定很糟糕。iOS开发更容易的另一个原因…当然在我看来