2011-03-28 36 views
1

创建一个类似iPhone的自定义列表视图我正在设计中的Android定制列表视图下的在线教程Android Series: Custom ListView items and adapters和我创造了这样一个自定义列表视图:如何在Android的

Enter image description here

这很简单并罚款。现在,我在网上冲浪,发现了iPhone这个奇妙的ListView:

Enter image description here

如何创建这样的事情?他是如何为每一行提供一个像界面一样的盒子,将它们与背景和对方分开?

+0

只是为了确认,你想一个ListView看起来像iPhone看法?我想不出如何在没有完成所有绘图的情况下默认执行此操作(不知道如何执行此操作)。该iPhone视图看起来像只是在Safari浏览器正确的HTML/CSS? – 2011-03-28 20:08:22

回答

2

你可以尝试删除列表分隔(android:divider="@null"android:dividerHeight="0px"),并使用自定义绘制为每个行的背景(无论是9patchShapeDrawable,可能安排在StateList使他们能够有按下/选择的状态)。然后,只需在行布局上放一个边距,并且应该照顾您的间距(或者,您可以使用透明图像作为具有适当高度的列表分隔线)。但要注意简单地添加一个iOS风格,因为它看起来不错;想想一下典型的Android用户以及他们作为界面线索所做的事情。如果你让你的Android列表看起来像下面的屏幕截图一样,我想很多Android用户甚至不会意识到他们可以点击这些行,或者他们是可滚动列表的一部分。

+0

谢谢我会试试这个。我同意,如果我完全像许多人不会觉得它是可点击的那样。我只是想让自定义列表视图看起来不错。你可以建议一些替代设计,可以用来代替iPhone的? – 2011-03-28 20:22:08

+0

当然 - 首先,尝试Android的轻量级主题,而不是默认的黑色;你会得到很多里程。我认为我们对LevelUp的列表(https://market.android.com/details?id=com.scvngr.levelup.app)表示满意。 Twitter的列表很简单,但可以完成工作(https://market.android.com/details?id=com.twitter.android)。真的看看一些流行的Twitter应用程序;他们可能会给你一些想法。 – 2011-03-28 20:29:25

+0

非常感谢我喜欢scvenger列表https://ssl.gstatic.com/android/market/com.scvngr.levelup.app/ss-0-320-480-160-0-4df16e9092afc394f99fb4d813b9489544b23693。如何更改默认主题? 你是怎么把这个框架像你的图片上的效果?有没有任何批处理工具? – 2011-03-29 09:48:38

0

listview和listview中的每个项目都可以有不同的背景。所以你所要做的就是制作一些PNG文件,看起来像项目的背景和列表本身。

您可以使用android:src以XML格式设置背景。

或者在运行时使用:

setImageDrawable(getResources().getDrawable(R.drawable."picture name"))