1

假设我在库项目中定义了一个共享活动类,对于使用它的任何应用程序都不会更改,因此不需要子类化,我是否可以在不为它们子类化此活动的情况下创建应用程序?

为了更好地解释我的问题,假设我在图书馆项目中有一个活动:

public class LibActivity extends Activity {
 ...
}

现在我正在使用该库项目创建一个应用程序。我真的需要创造吗

public class AppActivity extends LibActivity {
 // totally empty!
}

只是让应用程序有自己的活动被自己引用AndroidManifest.xml

我能否找到一种简约​​方法,仅当我需要修改库的活动核心行为时才对活动进行子类化?

4

2 回答 2

2

这是完全合格的答案:

是的,基于活动的应用程序不必从库的活动中派生活动。该应用程序只是逐字使用库的活动,未经修改。

是的,我可以通过简约的方法获得一种方法,仅当我需要修改库的活动核心行为时,我才对活动进行子类化。

我已经能够使用在库和应用程序AndroidManifest.xml相同的来验证这一点。看看是否可以消除其中的一些冗余将会很有趣。我将对此进行试验并报告。

更新:果然,可以创建一个完美运行的应用程序,其中唯一的活动是在库中定义的,而库 AndroidManifest.xml中没有任何<application><activity>!如果应用程序AndroidManifest.xml有它们,这是可能的。

于 2011-07-04T14:23:53.073 回答
1

您可以直接从您的应用程序 AndroidManifest.xml 引用库 Activity 类。只需像这样指定完全限定名称android:name="com.example.LibActivity"

于 2011-06-29T18:29:22.860 回答