2012-02-07 9 views
1

タブレイアウトのアプリをビルドします。そして、私は一般的にタブレイアウトに関するいくつかの懸念があります。Androidタブのレイアウト、受け入れられたパターン?

  • アプリ内のタブタブは何らかの形で接続されていますが、それらの間でデータをやりとりしていますか?
  • そして、データを渡すと親ホストにタブを切り替える方法を教えてください。
  • 私は、タブでアクティビティを使用しない代わりにレイアウトを使用する場所をいくつか読んだことがあります。何故なの?私はタブを一種のコントローラとして見ています。同じアクティビティで異なるレイアウトを使用して、あるモデルの「リストビュー」と「詳細」ビューを言うと、私のアクティビティは両方のロジックが混乱しますそれら。

今のところ私は2つのタブを持っています.1つのリストビュータブは項目のリスト(DUH!)を表示し、1つのフィルタータブはフィルターを適用するボタンで項目をフィルターします。 フィルタを適用するときに、アイテムのタイトルやカテゴリなどの要素に応じて、リスト内のアイテムをフィルタリングする必要があります。ボタンをクリックすると、リストとタブホストによって選択されたブロードキャストインテントを送信し、タブを切り替えて、フィルタの後のリストを変更します。

これは意味がありますか、どうやってそれを行いますか?

// TWD

答えて

1

あなたは、最新かつ最高のアンドロイドの機能をサポートしたい場合は、Action Barをチェックしてください。以前のバージョンでは弱点だったナビゲーションタブが提供されています。それは非常にいいですし、断片を使ってタブの内容を扱います。

以前のアンドロイドバージョン用に実装されたソリューションが必要な場合は、後方互換のアクションバーを提供するActionBarSherlockライブラリをチェックしてください。

タブ間の通信はすべて同じアクティビティ内にあるため、アクティビティクラスを介して簡単に通信できます。

+0

+1 ActionBarの場合、新しいアプリケーションを開発する場合は、実際にはこのコントロールをTabLayoutよりも考慮する必要があります。タブレットのサポートがより簡単になります。 –

+0

それをチェックしますが、その唯一のAndroid 3 = <(?)なので、おそらく互換性のあるデバイスの数は少なくなります。 – twDuke

+0

例によると、私は後方互換性を持つことができます。だから再びthx。 – twDuke

0

アクションバーは必ずしもあらゆる状況の解決策ではないので、別のオプションを捨ててみましょう。 1)それはFragmentActivityタブ間を調整し、通信を管理することができフラグメントインフラストラクチャを経由してメッセージパッシングと制御することができます:

http://developer.android.com/resources/samples/Support4Demos/src/com/example/android/supportv4/app/FragmentTabsPager.html

そのカップルのキーの問題を解決します。 2)フラグメント切り替えと更新タブの選択を処理するビューページャを統合します 3)欠点なしでアクティビティを使用することの利点をすべて提供します。フラグメントは基本的に、アクティビティに似たライフサイクルを持つ機能を実装するために使用できる、より小さなアクティビティのようなセグメントです。

もう1つの利点は、互換性ライブラリがアンドロイド1.5に戻るフラグメントのサポートを追加することです。また、タブの数を減らすために、より大きなデバイスで複数のフラグメントを並べてサポートすることもできます。かなりきちんとした解決策。

関連する問題