0

expandableListView 内に edittext とスピナーがあり、editText に何かを書き込んだ後、ソフト キーボードを非表示にした後、expandablelistView が以前の状態にリサイクルされ、変更したすべての値が失われるという問題があります。

私のコードの主な問題は、サーバーで作成されている xml ページを介してビューが生成されているため、editText が来るかどうかわからないことです。

私は hashMap を使用して値を保持しており、展開と折りたたみで保持されていますが、直面している唯一の問題は、ソフト入力キーボードを開いてから閉じると、拡張可能なものがリサイクルされることです。

私のアダプターで、ソフト入力キーボードのステータスが表示または非表示になっていることを知ることができれば、そのステータスを保持できると思います。

4

1 に答える 1

0

EditTextアダプターの状態を保持する必要があります。たとえば、変更リスナーを追加してモデル オブジェクト/DAO に書き込みます。のモデルから読み取る必要がありますonCreateView()

どの要素が来ているのかわからない場合、すべての情報を保存するのが難しくなります。EditText.class.equals(view.getClass())おそらくデータモデルのIDまたはアダプターのアイテムを使用して、ツリーを検索し、マップに状態を保存できます。

すべてを正しく行う場合は、キーボードの存在を気にする必要はありません

于 2014-01-30T03:00:30.523 に答える