我想创建一个名为Vista的通用父类(super class)来扩展android Activity,然后创建扩展我的Vista类的所有 Activity (从而继承我所有 Activity 中的所有常用方法)。但在项目中我有一些 FragmentActivity 类,我无法从 Vista 类扩展这些类。
有什么解决办法吗? 我可以在类似的 Activity 中更改我的 FragmentActivity 并使用 android.app.fragment 与 TabHost 内部,而不是 android.support.v4.fragment 因为我是为 android 4+ 开发的?
最佳答案
您需要将Vista类设为独立的帮助器类。然后创建一个 ActivityVista 类,该类扩展 Activity 并包含 Vista 帮助程序类的实例作为私有(private)成员。还创建一个 FragmentActivityVista 类,该类扩展 FragmentActivity 并包含 Vista 帮助程序类的实例。
ActivityVista 和 FragmentActivityVista 类必须有一堆调用 Vista 帮助器类的转发函数,但它们在至少不必复制完整的功能。
关于Android 常见的 Activity 和 FragmentActivity 父类(super class),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17279726/