我想创建一个应用程序“家族”。这些应用程序都将具有相同的外观和感觉,并且它们之间的变化很小。这些变化可能在字符串,一些图片以及生命周期方法中的一些变化。有道覆盖库模块行为
我想这样做的方式是通过在Android Studio中一库模块,这将有一个默认的外观和实现共同所有的应用程序,并让每个应用程序改变它所需要本身。图书馆将包括所有的活动,将进行片段交易并持有资源。
的问题是,我不知道如何重写的生命周期方法的行为。对于字符串和图片它不是一个问题,因为你可以为它们命名,他们在库中具有相同的名称,以及应用程序的正确的资源将被采取。
我想重写行为的方式是这样的:
public class MyAppFragment extends MyLibraryFragment
{
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
View v = super.onCreateView(inflater, container, savedInstanceState);
//add more stuff to the originial implementation here
return v;
}
}
但当然,库不知道的新的碎片,它的代码将只允许实例化MyLibraryFragment
。那么我怎么能告诉库来实例化应用程序的片段而不是库?对于我认为相同的活动,同样的问题也是如此。
至少从阅读您链接到答案,似乎这样的解决方案将让我使用很多的if-else检查风味,而没有让我使用继承? –