没有xml的Android视图

时间:2009-09-10 10:46:07

标签: xml android view

我需要创建没有XML的视图。我通过View的getID方法检索视图ID,但我得到了ResourceNotFoundException。我尝试使用setID方法来修复此ID,但它不再起作用了。

4 个答案:

答案 0 :(得分:1)

如果您尚未在布局XML文件中声明视图并将id放在其上,则无法使用

检索它

findViewById(int)

如果您在没有XML的情况下创建视图,则应该在没有资源ID的情况下进行管理。您只需创建视图并为其命名,然后使用该名称对其进行操作。

您始终可以将其引用传递给其他类,或者通过创建它的类来访问它。

但是,您是否希望不以XML格式声明它?通常,当您启动项目时,您无法看到如何使用XML布局执行某些操作,并选择以编程方式创建大多数视图。在您继续学习该项目之后,或者在几乎所有情况下都可以获得更多经验,您会发现您可以使用XML完成它。

答案 1 :(得分:1)

我认为问题在于。 当您致电findViewById()时,它会在显示树中搜索该视图。因此,要从树中获取视图,您应该已使用函数addView()将视图添加到树中。如果您还没有这样做,可能无法在树中找到该视图。

答案 2 :(得分:0)

如果您尝试打印视图的getId(int),您是否获得了有效的ID?

尝试在正确的上下文中使用findViewById(int),例如yourContext.findViewById(int);

答案 3 :(得分:0)

这很容易。

lv = new ListView(this); lv.setId(android.R.layout.simple_list_item_1);

SimpleCursorAdapter ca = new SimpleCursorAdapter(this, android.R.layout.simple_list_item_1, c, from, to);