如何为Android活动的某些部分创建公共代码?

时间:2011-02-01 18:52:54

标签: android android-activity

在我的申请中有14项活动。其中9个活动包含自定义标题栏和选项卡窗格。所以在这里我需要在一个地方编写这个通用代码而不是每个包含自定义标题栏和标签窗格代码的活动中的冗余代码(即布局和它的活动特定代码)

有什么方法可以做到这一点?

2 个答案:

答案 0 :(得分:11)

常见的方法是:

  • 创建一个名为CommonActivity的超级类,扩展Activity
  • 将样板代码放在该类
  • 然后让您的活动延伸CommonActivity而不是Activity

这是一个简单的例子:

public class CommonActivity extends Activity{
    public void onCreate(Bundle b){
        super.onCreate(b);
        // code that is repeated
    }

    protected void moreRepeatitiveCode(){
    }
}

您当前的活动:

public class AnActivity extends CommonActivity{
    public void onCreate(Bundle b){
        super.onCreate(b);
        // specific code
    }
}

答案 1 :(得分:1)

嗯..常用代码并不总是需要在Activity类中,而只需要常规类。我们可以根据我们的需要调用这些方法来引用公共代码类。

我对这个example是对的吗?

当然,如果我们需要它像Activity一样,如果我们处理Activity生命周期并且我们不忘记 将它添加到清单文件

一般情况下,活动应该只创建UI,处理事件发生,并将业务逻辑和/或其他操作委托给我们应用程序中的其他组件。

干杯