Android中的LayoutInflater有什么作用?
在Android中使用
LayoutInflater
有什么用?
没有找到相关结果
已邀请:
14 个回复
皇小福另届
中使用自定义视图时,必须定义行布局。 你创建一个你放置android小部件的xml,然后在适配器的代码中你必须做这样的事情:
阅读官方文档中的更多内容。
陷牡彭拈峰
豆兢
做什么? 当我第一次开始Android编程时,我对
和
感到很困惑。有时我们使用一个,有时使用另一个。
用于从您的一个xml布局创建一个新的
(或
)对象。
只是为您提供了一个比已经创建的视图的引用。你可能认为你还没有创建任何视图,但每当你在
中调用
时,活动的布局及其子视图会在幕后膨胀(创建)。 因此,如果视图已存在,则使用
。如果没有,则用
创建它。 例 这是我制作的一个迷你项目,展示了
和
的实际效果。没有特殊代码,布局看起来像这样。 蓝色方块是使用
插入主布局的自定义布局(有关详细信息,请参见此处)。它被自动充气,因为它是内容视图的一部分。如您所见,代码没有什么特别之处。
现在让我们膨胀(创建)我们自定义布局的另一个副本并添加它。
为了给新的视图布局充气,我所做的只是告诉inflater我的xml文件的名称(
),我要将它添加到的父布局(
),我实际上并不想添加它(
)。 (我也可以将父设置为
,但是我的自定义布局的根视图的布局参数将被忽略。) 这里再次出现在背景中。
注意只有在布局已经膨胀后才能使用
。 补充代码 这是上面例子的xml。 activity_main.xml中
my_layout.xml
什么时候需要LayoutInflater 大多数人使用它的最常见时间是
。 (有关列表或网格,请参阅这些
示例。)您必须为列表或网格中的每个可见项目充气。 如果您想要以编程方式添加复杂的布局,也可以使用布局inflater(就像我们在示例中所做的那样)。你可以在代码中完成所有操作,但是首先在xml中定义它然后只是给它充气要容易得多。
纤洞需匪
假设xml文件是“list_item.xml”,你如何得到视图?
惭法搽
schedule_layout.xml
在BaseAdapter类的扩展中覆盖getView方法
注意不同的inflate方法调用:
琳娘
对象。它永远不会被直接使用 - 使用
或
来检索已连接到当前上下文并为您运行的设备正确配置的标准
实例。例如:
参考:http://developer.android.com/reference/android/view/LayoutInflater.html
戊袱
该文件可以保存为date_time_dialog.xml:
此文件可以保存为date_time_picker.xml:
类保存为MainActivity.java:
期差骇蓟
到街客核
氏脑
耐扫鹤胶鞭
疾很毋悲
臀博
联课