可以使用setContentView获取除xml布局以外的输入吗?

时间:2014-01-20 17:53:20

标签: java android android-layout android-activity

以下行的含义是什么

context.setContentView(mCardScrollView);

其中context是常规活动(不是listActivity)

         mCardScrollView = new CardScrollView(context);
        ExampleCardScrollAdapter adapter = new ExampleCardScrollAdapter();
        mCardScrollView.setAdapter(adapter);
        mCardScrollView.activate();
        context.setContentView(mCardScrollView);

我习惯将xml布局传递给setContentView,不是吗?

2 个答案:

答案 0 :(得分:2)

API中定义了3个setContentView(...)方法:

  1. setContentView(int layoutResID)这是最常用的一种。它采用了XML布局文件id
  2. setContentView(View view)需要View。在您的情况下,它是CardScrollView对象
  3. setContentView (View view, ViewGroup.LayoutParams params)与2.相同,但也包含布局参数。
  4. 您可以在Activity documentation

    中详细了解它们

答案 1 :(得分:1)

  

可以setContentView获取除xml布局以外的输入吗?

是。 See the documentation了解它的不同方法。除了layout resource id之外,还可以使用View(您的示例中正在发生的事情)或Viewparams

  

以下行的含义是什么

     

context.setContentView(mCardScrollView);

正如评论中所述,这是View将在当前Window的{​​{1}}上设置的Activity。如果您使用Activity方法,例如onCreate(),则不需要使用Context变量,因为它已经有Context