繁体   English   中英

如何从活动中调用片段活动?

[英]How to call a fragment activity from an activity?

我实际上是在Android Studio中使用我的Android应用程序。 我已经在项目中导入了一个模块。 该模块由片段活动组成。 我已经将该模块编译到gradle应用程序文件中,并且还将模块包含在gradle设置文件中。 我想使用活动中的按钮来调用fragment活动,但是当我单击按钮时,应用程序崩溃。 我在AndroidManifest.xml文件中声明了片段活动,但应用程序不断崩溃。

应用程序崩溃时发生错误:

在此处输入图片说明 我正在使用以下代码来调用fragment活动:

Button btn1 = (Button)findViewById(R.id.button);
btn1.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
starActivity(new Intent(projectActivity.this, moduleFragmentActiviy.class));
}
});

我假设收到此错误是因为我直接从一个活动中调用一个片段活动。 如果是这种情况,请问我该如何调用片段活动。

如果您有权编辑该模块源代码,那么执行此操作的正确方法是将Intent-filter添加到FragmentActivity。

在模块的AndroidManifest.xml中

<activity
    android:name=".FragmentAcitivity" >  
    <intent-filter>
        <action android:name="com.example.YOUR_ACTION" />
        <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>
</activity>

并在主模块的MainActivity中:

Button btn1 = (Button) findViewById(R.id.button);
btn1.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        startActivity(new Intent("com.example.YOUR_ACTION"));
    }
});

...并且我希望您使用UpperCamelCase进行类命名

您可以共享清单文件吗? 语法看起来正确。 如错误消息中所述-请检查是否声明了活动类,尤其是在清单文件中声明了它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM