android - imeOptions 在 ListView 中不起作用

标签 android android-listview expandablelistview android-softkeyboard

我正在使用 imeOptions 并且它们工作正常。但是,我有一个 ExpandableListView,其中一个子项是具有 3 个 EditText 的布局,而 imeOptions 甚至没有显示这些布局。

知道可能是什么问题吗?有人在普通的 ListView 中使用 imeOptions 吗(即,这是对一般 ListView 的限制还是仅对 ExpandableListView 的限制) >)?

更新:我刚刚使用标准 ListView 而不是可扩展的进行了测试,我遇到了同样的问题。

这是列表项布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:weightSum="100" >

    <View 
        android:layout_width="0px"
        android:layout_height="wrap_content"
        android:layout_weight="10" />

    <LinearLayout
        android:layout_width="0px"
        android:layout_weight="73"
        android:layout_height="wrap_content"
        android:orientation="vertical" >

        <EditText
            android:layout_marginTop="15dip"
            android:id="@+id/settingsText1"
            android:nextFocusDown="@+id/settingsText2"
            android:layout_width="match_parent" 
            android:layout_height="wrap_content"
            android:textColor="#000000"
            android:textSize="8pt"
            android:hint="OLD PASSWORD"
            android:background="@drawable/textfield2" />
        <EditText
            android:layout_marginTop="15dip"
            android:id="@+id/settingsText2"
            android:nextFocusDown="@+id/settingsText3"
            android:layout_width="match_parent" 
            android:layout_height="wrap_content"
            android:textColor="#000000"
            android:textSize="8pt"
            android:hint="NEW PASSWORD"
            android:background="@drawable/textfield2" />
        <EditText
            android:layout_marginTop="15dip"
            android:id="@+id/settingsText3"
            android:imeOptions="actionSend"
            android:layout_width="match_parent" 
            android:layout_height="wrap_content"
            android:textColor="#000000"
            android:textSize="8pt"
            android:hint="CONFIRM PASSWORD"
            android:background="@drawable/textfield2" />

    </LinearLayout>

    <View 
        android:layout_width="0px"
        android:layout_height="wrap_content"
        android:layout_weight="27" />

</LinearLayout>

最佳答案

这毕竟不是一个ListView问题,而是一个相当奇怪的约束。如果没有 inputType 参数,则不会显示 imeOptions

所以这会起作用

<EditText
  android:inputType="textPassword"
  android:nextFocusDown="@+id/settingsText2"
  android:layout_width="match_parent" 
  android:layout_height="wrap_content" />

虽然这不会

<EditText
  android:nextFocusDown="@+id/settingsText2"
  android:layout_width="match_parent" 
  android:layout_height="wrap_content" />

关于android - imeOptions 在 ListView 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18996419/

相关文章:

android - 为什么我的 Navigation Drawer 认为它已关闭但在旋转后仍保持打开状态?

Android - 多列 ListView

android - AdapterView.OnItemClickListener() 在我的 customAdapter 中不起作用

android - 如何在 ExpandableList 中使用 ListView?

ios - 如何设置可展开和可折叠的tableview单元格在加载时可展开

android - 在android教程中将数据写入NFC标签

android - Android 系统 WebView 中的 SSL 错误

android - finish() 和 Android Activity 生命周期

android - 最后一个单元格在自定义 Android ListView 布局中不可见

java - 将 ArrayList<ArrayList<String>> 转换为 java 中的二维数组