Java 如何从MainActivity启动片段活动?
我建了一个导航抽屉。应用程序启动后,我通过“MainActivity”中的以下代码,通过意图将用户从“MainActivity”引导到MainMenuActivity: 但当应用程序启动时,它会直接崩溃,日志为:Java 如何从MainActivity启动片段活动?,java,android,navigation-drawer,Java,Android,Navigation Drawer,我建了一个导航抽屉。应用程序启动后,我通过“MainActivity”中的以下代码,通过意图将用户从“MainActivity”引导到MainMenuActivity: 但当应用程序启动时,它会直接崩溃,日志为: Caused by: android.content.ActivityNotFoundException: Unable to find explicit activity class {package.allineed/Package.MainMenuActivity}; have
Caused by: android.content.ActivityNotFoundException: Unable to find explicit activity class {package.allineed/Package.MainMenuActivity}; have you declared this activity in your AndroidManifest.xml?
我通过向应用程序添加以下代码,在AndroidManifest.xml中声明了MainMenuActivity:
<activity android:name=".MainMenuActivity"></activity>
这是主要活动:
public class MainMenuActivity extends Fragment{
View myView;
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
myView=inflater.inflate(R.layout.activity_main_menu,container,false);
return myView;
}
}
我花了很多时间,怎么可能解决呢 试试这个-
public class MainMenuActivity extends FragmentActivity
您可以查看以了解更多信息
您必须将片段嵌入现有活动中,您不能直接调用片段类上的startActivity()
尝试以下操作-
public class MainMenuActivity extends FragmentActivity
您可以查看以了解更多信息
您必须将片段嵌入现有活动中,您永远不能直接调用片段类上的
startActivity()
首先main活动
是fragment
而不是activity
。所以不应该在Manifest.xml
中声明为活动
您不能使用Intent直接调用Fragment
通过使用FragmentManager
和FragmentTransaction
可以将片段加载到活动中
只需查看此链接,了解如何在活动中使用片段
首先,main活动
是一个片段
而不是活动
。所以不应该在Manifest.xml
中声明为活动
您不能使用Intent直接调用Fragment
通过使用FragmentManager
和FragmentTransaction
可以将片段加载到活动中
只需查看此链接,了解如何在活动中使用片段
如果需要NavigationDrawer,那么main_activity.xml应该如下所示
然后,您可以通过在MainActivity中设置导航
Fragment fragment = new MainMenuActivity();
// Insert the fragment by replacing any existing fragment
FragmentManager fragmentManager = getFragmentManager();
fragmentManager.beginTransaction()
.replace(R.id.left_drawer, fragment)
.commit();
FrameLayout
是一个支架,可以在运行时填充任何布局。
DrawerLayout
中的最后一项用于导航。使用android:layout\u gravity
你可以说,你想要导航到哪里。如果你想要一个导航抽屉,那么main\u activity.xml应该如下所示
然后,您可以通过在MainActivity中设置导航
Fragment fragment = new MainMenuActivity();
// Insert the fragment by replacing any existing fragment
FragmentManager fragmentManager = getFragmentManager();
fragmentManager.beginTransaction()
.replace(R.id.left_drawer, fragment)
.commit();
FrameLayout
是一个支架,可以在运行时填充任何布局。
DrawerLayout
中的最后一项用于导航。使用android:layou\u gravity
你可以说,你想导航到哪里。你在你的AndroidManifest.xml中声明过这个活动吗?main活动
是一个片段,而不是活动
,你必须决定你想要一个活动
或片段
你想要一个片段还是一个活动?我想从一个活动中访问一个片段,然后你必须在你的活动布局中添加一个框架布局,并使用片段管理器
加载片段你在你的AndroidManifest.xml?MainMenuActivity
是一个片段,而不是活动
,你必须决定你想要一个活动
或片段
你想要一个片段还是一个活动?我想从一个活动中访问一个片段,然后你必须在活动布局中添加一个框架布局,并使用片段管理器