【问题标题】:Android Activity, extend BaseActivityAndroid Activity,扩展 BaseActivity
【发布时间】:2014-08-08 09:03:05
【问题描述】:

实现我的想法的正确方法是什么?我应该使用 inflate 吗?

想要大约。 100 项活动。它们都扩展了相同的基类 (BaseActivity)。我想要完成的是一个 BaseActivity,它将显示 3 个视图(LeftViewMainViewRightView)线性布局(水平)。这不是问题。 MainView 为空。

当我想设计 MyActivity(扩展 BaseActivity)时,问题就出现了。我的想法是 MyActivity 中设计的 R.layout 仅显示在 MainView 中(BaseActivity 的一部分)。

这可能吗?什么是最聪明的/最好的实现方式?

亲切的问候,奥莱

【问题讨论】:

  • 亲爱的上帝。我不完全了解您的问题是什么,但是在进行 100 个活动之前重新考虑您的架构。您可以通过一个活动/片段对和良好的数据结构来实现它。
  • 呵呵,说 100 个活动的唯一原因是确保没有人会建议一次又一次地重写相同的 xml-layout :)

标签: android templates layout android-activity extends


【解决方案1】:

好吧,我选择处理这个问题的方式是膨胀 R.layout:

public class BaseActivity extends Activity
{
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.base_activity);
        return;
    }
}

public class MyActivity extends BaseActivity
{
    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        RelativeLayout da_layout_main = (RelativeLayout) findViewById( R.id.da_layout_main);
        View view_child = getLayoutInflater().inflate( R.layout.my_activity, null);
        da_layout_main.addView( view_child);
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-17
    相关资源
    最近更新 更多