どうにかしてビューまたはアダプターを削除することは可能MergeAdapter
ですか? 私はそれを拡張してビューを削除しようとしましたpieces
が、private
. または、このアダプターでビューを表示/非表示にする代替ソリューションがありますか? layout_height
ゼロに設定し、可視性をに設定しようとしましView.GONE
たが、まだ空のリスト項目が表示されます。前もって感謝します。
4 に答える
ビューまたはアダプターを削除するにMergeAdapter
は、次の方法を使用します。
setActive()
mergeAdapter インスタンスで。
例: Textview
(mytextView) を (merAdapter) から削除するにMergeAdapter
は:
merAdapter.setActive(mytextViiew,false);
そして、それを再び有効にするには(見えるようにするために)、次を使用します:
merAdapter.setActive(mytextViiew,true);
詳細については、MergeAdapter
ドキュメントを参照してください。
どうにかして MergeAdapter からビューまたはアダプターを削除することはできますか?
現在ありません、すみません。試してみたい場合は、追加するのはそれほど難しくありません (コレクションから削除し、 を呼び出しnotifyDataSetChanged()
て更新します)。AdapterView
貢献は大歓迎です!:-)
Mark Murphyの答えを拡張すると、これはMergeAdapterにこのメソッドを追加するのと同じくらい簡単だと思います:
public void removeAdapter(ListAdapter la) {
pieces.remove(la);
}
remove()
オブジェクトを取得し、そのオブジェクトがピース リストに含まれている場合、必要なすべてのテストと削除を行います。独自の目的のためにこれをブール値または何かに戻すこともできますが、そのような必要はありませんでした。
次に、次のように呼び出します。
int view_to_remove = *AN_INT*
adapter.removeAdapter(listAdapter.getAdapter(view_to_remove));
adapter.notifyDataSetChanged();
あなたのMergeAdapterにはメソッドが呼び出されているはずgetCount()
です..私があなたを正しく理解していれば、そこからゼロを返すと問題が解決するかもしれません..