如何在Android上为GridView创建圆角矩形边框?

时间:2012-01-18 12:30:33

标签: android

我想在Android上为GridView创建一个圆角矩形边框,如下图所示:

GridView

我怎样才能做到这一点?提前谢谢。

7 个答案:

答案 0 :(得分:6)

创建一个可绘制的形状,如下所示,并设置为视图的背景:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >

    <solid android:color="#C0C0C0"></solid>
    <stroke android:width="1dp" android:color="#000000"></stroke>
    <corners android:radius="5dp"></corners>

</shape>

P.S。这只会创建一个圆角矩形

答案 1 :(得分:4)

我们的想法是首先创建一个可绘制的形状,它具有您喜欢的圆边和颜色。这是一个例子:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >

<gradient 
    android:startColor="#353535"
    android:endColor="#222222"
    android:angle="90" />

<stroke android:width="1dp" android:color="#404040"/>

<corners android:radius="10dp" />

<padding 
    android:left="10dp" 
    android:top="10dp"
    android:right="10dp" 
    android:bottom="10dp" />

</shape>

然后使用GridView将其设置为android:background的背景。

答案 2 :(得分:1)

您可以创建shape-drawable并通过xml android:background属性或通过setBackgroundResource()

将其设置为GridView的背景

答案 3 :(得分:1)

你可以通过3个简单步骤实现它:

第1步: 我创建了一个如下矩形的形状:

<stroke android:width="4dp" android:color="#FF00FF00" />

<solid android:color="#ffffff" />
<padding android:left="7dp" android:top="7dp"
        android:right="7dp" android:bottom="7dp" />
<corners android:radius="4dp" />

第2步: 将此XML存储在Res / Drawable文件夹.xml

第3步: 现在在代码中将此形状称为GridView.setBackgroundResource(R.drawble..xml)。

答案 4 :(得分:0)

使用此

  Rect rHole = new Rect(pTopLeft.x, pTopLeft.y, pBotRight.x, pBotRight.y);

 canvas.drawRect(30,0,35,50,Reference_to_Paint_Object);

答案 5 :(得分:0)

您也可以使用它来创建形状..

<?xml version="1.0" encoding="UTF-8"?>
    <shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="rectangle">
        <gradient android:startColor="#CBCBCA" android:endColor="#FFFFFF"
            android:angle="270" />
        <corners android:bottomRightRadius="7dp"
            android:bottomLeftRadius="7dp" android:topLeftRadius="7dp"
            android:topRightRadius="7dp" />
    </shape> 

答案 6 :(得分:0)

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" >

    <gradient
        android:endColor="#ffffff"
        android:startColor="#ffffff" />

    <corners android:radius="8dp" />

</shape>

SUe it In background of parent layout. it will help you.