2012-03-22 13 views
0

私は7インチ以上のタブレットを対象としたアプリを開発していますので、ターゲットプラットフォームはAndroid 3.xです リストアイテムの詳細を表示する効率的な方法を探しています(注:アプリケーションの性質上、ListViewを他のビューやこのアクティビティのFragmentと共有したくない)リストの項目がクリックされると、 。。リストアイテムの詳細を効率的に表示する

  1. 最も簡単なものです:リストアイテムがクリックされた上で、単純にその項目の詳細が表示され活動を開始当時の詳細を表示する項目の詳細はかなり画面全体を取る、私は心の中でのアプローチのカップルを持っています私はアイテムがクリックされるたびに効率的ではないようです。詳細アクティビティが作成され、破棄されました。

  2. リストアイテムの詳細のカスタムダイアログを作成し、リストアクティビティで参照を保持します。項目がクリックされると、クリックされたリスト項目に対応する内容を表示するこのダイアログを表示します。このアプローチでは、Dialogが完全な画面を表示するようにしたいと思います。

  3. ListViewでFrameLayoutをVisibilityで定義します(フレームレイアウトはListView画面でスペースを取りません)。このフレームレイアウトは、Details Fragmentのコンテナとして機能します。リスト項目をクリックするとListViewが非表示になり、フレームレイアウトが表示されます。この方法では、リストビューと詳細ビューの間を効率的にナビゲートすることはできません。

  4. Androidの専門家が提供するはずです。 :)

ありがとうございます。

答えて

1

アプローチ1をとることができない理由はありません(詳細を表示するにはActivityを作成してください)。さらに良いことに、

<activity 
    android:name=".DetailsActivity" 
    android:theme="@android:style/Theme.Dialog"> 
</activity> 

をクリックActivity「閉じる」ボタンを与える... 1 & 2はAndroidManifest.xmlでこのような何かを持つダイアログをテーマにしたActivityを作成するために組み合わせるActivityを終了しfinish()を呼び出します。私は現在のプロジェクトにいくつかのダイアログテーマのActivitiesを持っており、本当にうまく動作します。

+0

これが私のこのアプローチに対する懸念です。ユーザーがListアイテムをクリックするたびにDetailsActivityを作成して破棄しています。詳細表示(カスタムダイアログまたはフラグメントまたはそれ以上の方法のいずれか)を保持し、リストアイテムに対応するコンテンツを変更して表示したいと思います。 –

関連する問題