如何实现圆角桌子?

时间:2012-09-13 08:00:28

标签: android user-interface border

这就是我想要的:

enter image description here

这就是我所做的:

enter image description here

区别在于线条和边框之间有一些空格,因为我使用padding=10dp作为外边框:

<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="#FFFFFF"/>
    <stroke android:width="2dp" android:color="#808080"/>
    <corners
            android:radius="10dp"/>
    <padding
            android:left="10dp"
            android:top="10dp"
            android:right="10dp"
            android:bottom="10dp"/>
</shape>

我这样做了吗?我该如何解决这个问题?

3 个答案:

答案 0 :(得分:4)

这是您想要的xml文件。

从xml文件中删除填充,并在每个小部件中添加填充。这里test.xml是你的后台xml文件,没有填充属性。

 <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" 
        android:orientation="vertical"
        android:layout_gravity="center_horizontal"
        android:background="@drawable/test"
        android:layout_margin="10dp">

        <TextView
            android:id="@+id/textView"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" 
            android:text="Sample TextView"
            android:padding="10dp"/>

        <View 
            android:layout_width="fill_parent"
            android:layout_height="2dp"
            android:background="#000000" />

        <TextView
            android:id="@+id/textView"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" 
            android:text="Sample TextView"
            android:padding="10dp"/>

        </LinearLayout>

编辑 test.xml文件

<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="#FFFFFF"/>
    <stroke android:width="2dp" android:color="#808080"/>
    <corners
            android:radius="10dp"/>

</shape>

enter image description here

答案 1 :(得分:1)

删除填充。将元素放在每个框中,并为每个框添加填充。

答案 2 :(得分:1)

解决方案1: //删除形状的填充

解决方案2: //保持填充

并为您的视图添加边距,即您绘制为水平线的

android:marginLeft="-10dp"
android:marginRight="-10dp"

//为最高的

android:marginTop="-10dp"