3

我正在尝试ListFragment在图形布局编辑器中预览 a。由于它没有要预览的片段布局,我只是创建了一个带有ListView内部的 xml,只是为了查看项目的外观,并使用默认项目布局之一设置预览列表内容,只是为了尝试。

问题是:

  1. 无论我选择什么预览列表内容,预览中的列表都是空的;(我不知道我做错了什么,现在可以了)
  2. 我想预览我自己的自定义列表项View,而不仅仅是一个布局,因为当isInEditMode()它是真的时我会做一些事情。

任何的想法?

编辑:片段是 a ListFragment,但我可以使用“临时” listview.xml 布局。我想要的是一种在我的CustomListItemView内部查看列表视图的方法。在片段中,我将使用自定义适配器将它们放在那里;在布局编辑器中,我希望我可以CustomListItemView预览列表内容菜单中进行选择。

我不能只使用自定义项的布局作为预览列表内容,因为它的根是<merge>(我的自定义项扩展RelativeLayout)。这可以通过更改<merge><RelativeLayout>. 但是,此自定义项目视图会根据数据而变化,因此我很想通过使用该isInEditMode()工具查看各种状态的预览。

如果没有临时的 listview.xml 布局,这一切都可以工作,那么最好的情况是,但这正在成为一个功能请求。

现在我正在诉诸使用垂直LinearLayout.

4

2 回答 2

6

我看了看,看起来答案是今天不可能,因为有两个错误。

  1. 出于某种原因,如果 ListView 是布局的根元素,而不是嵌入到布局中,则 ListView 预览不起作用。解决方法很简单;只需用其他一些布局(如 LinearLayout)围绕 ListView,将 ListView 的 layout_width 和 layout_height 设置为 match_parent。

  2. 出于某种原因,当具有 ListView 和自定义视图的布局包含到另一个布局中时,自定义列表项布局不起作用。我知道这曾经有效,所以它一定在某个时候坏了,可能是当我们从使用注释样式元数据切换到工具命名空间元数据来记录要使用的布局时。

我已提交此问题以跟踪工作:
http ://code.google.com/p/android/issues/detail?id=36838

于 2012-08-29T23:56:29.420 回答
1

你可以在我的帖子中找到有用的关于使用 listfragment 的布局,它不会解决你所有的问题,但至少你可以直接使用你将要使用的有效布局:

来自 xml 的 ListFragment 布局

于 2012-08-29T14:32:14.630 回答