【问题标题】:Is it possible to call the mainActivity class of another project ?是否可以调用另一个项目的 mainActivity 类?
【发布时间】:2015-05-25 15:19:15
【问题描述】:

我有 3 个 android 项目,它们具有不同的功能。每个项目都有自己的 mainActivity 类。 现在我想将 3 个项目合并为一个。我可以想到两种方法。

第一种方法:打开 3 个项目中的一个,然后创建新的 java 类和 xml 文件并从其他 2 个项目复制所有 java 类和 xml 内容。但是,每个项目都有自己的 mainActivity 类。我不知道我是否应该只保留一个 mainActivity 类并重命名其他 2 个项目的其他 2 个 mainActivity 类。似乎很容易遇到很多错误和混乱。

第二种方式:使用 3 个按钮。 onclick first button 然后项目 1 的 mainActivity 类将运行。 onclick 第二个按钮,然后项目 2 的 mainActivity 类将运行。 onclick 第三个按钮,然后项目 3 的 mainActivity 类将运行。但是,我不知道是否可以这样做。如果是,我该怎么做?我知道如何单击按钮以转到新活动,但这是否同样适用于 onclick 转到其他项目的 mainActivity ?

如果可能的话,我更喜欢第二种方法。有人可以帮忙吗?请指教,谢谢。

【问题讨论】:

  • 如果您愿意,也可以将它们保存在三个子包中。 :) 这将需要更少的重构。

标签: java android button onclick main-activity


【解决方案1】:

这认为不可能,你需要在1个项目中导入所有功能... 不能一键打开其他项目,需要在全局项目中导入自己需要的类和活动或者新建类,但不能调用其他项目。祝你好运!

【讨论】:

  • 你的意思是我应该考虑第一种方式而不是第二种方式?如果是这种情况,我是否应该只保留一个 mainActivity 类并重命名其他 2 个项目的另外 2 个 mainActivity 类?或者我只是将其他 2 个项目的 mainActivity 类中的所有内容放入第一个项目的 mainActivity 类中?
  • 是的,第一种方法是很好的解决方案,问题是如果您需要 3 个项目的代码在 1 个应用程序中,那么您需要将所有代码放在一个项目中,但复制代码是一种不好的方法,好的方法是从其他项目导入类并重命名这些类是导入的。您需要将其视为一个项目 - 一个应用程序,不同的项目 - 不同的应用程序。祝你好运!
【解决方案2】:

如果您向活动添加自定义操作:

<activity
   android:name=".MainActivity"
   android:label="@string/app_name" >
   <intent-filter>
       <action android:name="android.intent.action.MAIN" />
       <category android:name="android.intent.category.LAUNCHER" />
   </intent-filter>
   <intent-filter>
       <action android:name="com.example.action.MYACTION" />
       <category android:name="android.intent.category.DEFAULT"/>
   </intent-filter>
</activity>

只要设备上已经安装了应用程序,您就可以通过隐式 Intent 调用它:

Intent i = new Intent("com.example.action.MYACTION");
startActivity(i);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-09
    • 1970-01-01
    • 1970-01-01
    • 2020-06-05
    • 2017-02-03
    • 1970-01-01
    相关资源
    最近更新 更多