0

を拡張するクラスから、intent拡張する を開始する際に問題があります。FragmentActivity

TabBar2.class --> アクティビティを拡張

Favourite.class --> フラグメントを拡張

このように私の意図を書きます。

Intent intent1 = new Intent(TabBar2.this, Favourite.class);
startActivity(intent1);

しかし、インテントを実行するとアプリがクラッシュしonClickます。私のログキャットは言う

Unable to instantiate activity
 ComponentInfo{com.honey.test/com.honey.test.Favourite}:
 java.lang.ClassCastException: com.honey.test.Favourite

私は何を間違えましたか?誰かがこれを解決する方法を教えてもらえますか?

4

1 に答える 1

7

これは、Intent を介して Fragments を呼び出すことができないためです。Fragment は FragmentActivity の一部です。

全体として、Fragment はコンテナーではなくコンテンツであるため、FragmentActivity を作成し、その中に Fragment(Favourite) を追加してから呼び出す必要があります。

Intent intent1 = new Intent(TabBar2.this, SomeFragmentActivity.class);
startActivity(intent1);

A Fragment is a piece of an application's user interface or behavior that can be placed in an Activity 詳しくは

于 2012-10-30T04:19:00.660 に答える