2012-04-13 9 views
0

私はこれを検索しましたが、解決策を得ることができませんでした。FrameLayout内のアクティビティをandroidで表示する方法

アクティビティで3つのタブ(ボタンを使用)を作成しました。ボタンをクリックするたびに、対応するアクティビティがタブの下に表示されます。私はこれがタブホストで達成できることを知っていますが、私はそれを使いたくありません。タブの下にフレームレイアウトを宣言すると、どのようにフレームレイアウトのコンテンツを目的のアクティビティに設定できますか?私はAndroid 2.2で開発中です。

解決策を教えてください。

更新:私はTabHostでこのようなカスタムのタブを持っています。 enter image description here

答えて

1

この機能は、TabHostや別のタブコンテナなしでは使用できません。

この種の機能を使用したい場合、解決策には同じトップ "タブ"を持つ3つのアクティビティがあり、選択された "タブ"を適切に調整し、アクティビティライフサイクルを処理することがあります。

希望すると便利です。

+0

実は私はカスタムタブを持ちたいFragment(質問に更新された画像を参照してください) TabHost自体で。私はこれを達成することはできますか? –

+1

この機能を実現するには、フラグメント化されたオープンソースソリューションを使用してください。 AndroidのUIパターンアプリをダウンロードしてみてください。多くの例があります。 –

+0

私はTabHostのカスタムタブをこの[link](http://joshclemm.com/blog/?p=136)からシンプルに簡単に実現しました –

1

これを実現する正しい方法は、アクティビティ(FrameLayout内のアクティビティ)をFragmentに置き換えることです。 Android 2.2でフラグメントを使用するには、support packageを使用する必要があります。

1

この種の動作では、Fragmentに移動することを検討します。そうすれば、実際のコンテンツを構成する3つのフラグメントのホストとして1つの(Fragment)Activityを設定できます。あるフラグメントを別のフラグメントに置き換えるのは簡単です。

プレハニカムのために開発しているので、support libraryを見てください。これは下位互換性(私の頭の上から1.6まで)の実装を提供します。以前にフラグメントを使用していなかった場合は、API demosのサポートライブラリを参照してください。Fragments Fundamentals

1

こんにちはtabhostではなくViewPagerを使用してください。 このviewpager Android ViewPager

+0

私の問題は解決し、ViewPagerも私のための良い選択のように思えますが、あなたが与えたリンクは、タブを水平にスワイプできますが、個々のタブをクリックしてタブを選択することはできません。あなたはこの機能を達成するためのアイディアを持っていますか? –

+0

はい、onclicklistenerをtextまたはLinerLayoutに使用し、_mViewPager.setCurrentItem(0)を設定できます。 –

0

使用Actionbarsherlockのサンプルと例それはあなたが探しているまさに与え、独自のタブを作成する必要はありません...このライブラリは非常に多くの素晴らしい機能を持ってい

0

あなたの活動FragmentActivityを拡張する必要がありますし、あなたが作成する必要があり、各tabためViewPager .ANDを使用する必要がありますので、それには、あなたがFragmentPagerAdapterを拡張するクラスを作成する必要があり、それぞれの

関連する問題