我正在开发一个App,我需要在View上绘制边框和分隔符,比如eBay应用程序。
我认为形状和视图的组合与1dp。还有另一种简单的方法吗?
非常感谢。
答案 0 :(得分:1)
为外边框创建9补丁图像。使用它作为背景资源,它将为您提供带有实线边框的圆角。对于分隔符,您可以创建一个简单的视图,并拥有另一个背景资源,这是一个简单的图像,其颜色与9补丁中的边框颜色相同。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/roundedborder"
android:orientation="vertical">
<!-- Put Saved Searches display code here. Probably LinearLayout/horizonal -->
<TextView
android:layout_width="fill_parent"
android:layout_height="1dp"
android:background="@drawable/simpleborder"
android:layout_margin="3dp"/> <!-- Spacer! -->
<!-- Put Favorite sellers display code here. Probably LinearLayout/horizonal -->
</LinearLayout>
</LinearLayout>
答案 1 :(得分:0)
或者您可以在底部使用边距,对于位于空白区域上方的视图。
android:layout_marginBottom="1dp"
答案 2 :(得分:0)
如果你的意思是如何将视图组合在一起,使得一些视图在顶部有弯曲的角落,其他的在底部加上填充或边距,而其他的根本没有弯角,那么这是一种方法。< / p>
如果您正在将ListView与ListAdapter一起使用,那么当覆盖getView(int position, View convertView, ViewGroup parent)
时,应从position
确定应返回哪个视图并将其返回。您可以在返回之前更改视图的填充和边距。
此外,如果您覆盖getItemViewType(int position)
并为特定位置返回常量表示形式的视图类型将更有效,这样Android可以重复使用视图,您不必为新的扩展或更改属性每一次。