[解決済み】行ごとに異なるレイアウトのAndroid ListView
2022-03-25 19:11:34
質問
1つのListViewに各行ごとに異なるレイアウトを持たせるための最良の方法を見つけようとしています。カスタム行+カスタム配列アダプタを作成して、リストビュー全体のカスタム行をサポートする方法は知っていますが、ListViewに多くの異なる行スタイルを実装するにはどうしたらよいでしょうか?
解決方法は?
レイアウトの種類はわかっているのだから、その方法を使えばいいのです。
getViewTypeCount()
- このメソッドは、リスト内に何種類の行があるかという情報を返します。
getItemViewType(int position)
- 位置によってどのレイアウトタイプを使用すべきかの情報を返します。
そして、NULLの場合のみレイアウトを膨らませ、タイプは
getItemViewType
.
見てください このチュートリアル をご覧ください。
コメントにあるような構造の最適化を実現するために、私は提案したいと思います。
-
というオブジェクトにビューを格納する。
ViewHolder
. を呼び出す必要がなくなるので、スピードアップにつながるでしょう。findViewById()
で毎回getView
メソッドを使用します。参照 APIデモのList14 . - プロパティのすべての組み合わせに適合し、現在の位置がそれを持っていない場合にいくつかの要素を隠す、1つの一般的なレイアウトを作成します。
ご参考になれば幸いです。もし、あなたのデータ構造と、それをどのように行にマッピングしたいかという情報をXMLスタブで提供していただければ、より正確なアドバイスを差し上げることができると思います。ピクセル単位で
関連
-
[解決済み】シンボル 'AppCompatActivity' を解決できない。
-
[解決済み] [Solved] Unsupported method: ベースコンフィグ.getApplicationIdSuffix()
-
[解決済み】apkファイルのインストール中に「パッケージが破損しているようです」というエラーが発生する。
-
[解決済み】Bluestackの向きを変更する : ポートレート/ランドスケープモード
-
[解決済み] AndroidのListViewで画像を遅延ロードする方法
-
[解決済み] Bitmapオブジェクトに画像を読み込む際にOutOfMemoryが発生する問題
-
[解決済み] グリッドレイアウトにおけるフリングジェスチャーの検出
-
[解決済み】Android UserManager.isUserAGoat()の正しい使用例?)
-
[解決済み] Androidです。複数のクリック可能なボタンを持つListView要素
-
[解決済み] ListViewのマルチビュー用カスタムAndroid AdapterでArrayIndexOutOfBoundsExceptionが発生する件
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】AndroidのSSL接続でトラストアンカーが見つからない
-
[解決済み】com.android.ide.common.process.ProcessException: aaptの実行に失敗しました! どうすればいいですか?
-
[解決済み】シンボル 'AppCompatActivity' を解決できない。
-
[解決済み】アンドロイドクロームブラウザのモバイルウェブアプリケーションのメニューでHTMLユニコード ☰が検出されない。
-
[解決済み】Android Studioの初回起動。Android SDKアドオンリストにアクセスできない
-
[解決済み】リストビューにonclicklistenerを追加する(android)
-
[解決済み】カメラサービスへの接続に失敗しました。
-
[解決済み】Couldn't load memtrack module Logcat Error
-
[解決済み] android.support.design.widget.FloatingActionButton クラスの展開に失敗しました。
-
[解決済み] Androidのgravityとlayout_gravityの違いは何ですか?