Android开发:在XML布局中安装视图和定义视图有什么区别

时间:2013-01-04 19:26:00

标签: android-layout android-view

我是Android开发的新手。

我有Eclipse ADT(sdk版本:17,Android 4.2)。

我不明白之间的区别是什么:

  • 定义视图(通过ADT提供的可视化编辑器或直接在与当前活动相对应的 XML布局文件中)

  • 实时视图(将参数作为参数),例如: TextView tv = new TextView(getContext()); (已拍摄)来自:What is 'Context' on Android?,首先asnwer)

  • 实时视图(不将参数作为参数),例如: TextView tv = new TextView();

提前感谢任何建议。

亲切的问候

1 个答案:

答案 0 :(得分:2)

使用您的术语:

在XML中定义View(或者ADT编辑器 - 它只是为你创建XML)时,它仍然需要由布局inflater来充气。布局inflater将为您安装View(s)。这可以在幕后完成 - 例如当您致电Activity.setContentView()或直接使用View.inflate()时。 inflater实际上只运行XML并实例化它包含的所有视图。

在安装View时,你给它Context所以它有资源参考 - 所以它可以加载图片,字符串,尺寸等 - 以及其他Android相关功能(你现在可能会忽略了)。

如果没有上下文,您无法安装View