在android中没有边框的形状

时间:2014-02-14 11:53:59

标签: android android-linearlayout

我正在尝试使用this SO回答使linearlayout的角落四舍五入。所以这是我的shape.xml:

<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
       android:shape="rectangle">
    <stroke android:width="2dp" android:color="#FFFFFFFF" />
    <gradient android:startColor="#ffc578" android:endColor="#fb9d23"
              android:angle="225"/>

    <corners android:bottomRightRadius="7dp" android:bottomLeftRadius="7dp"
             android:topLeftRadius="7dp" android:topRightRadius="7dp"/>
</shape>

但这给了我一个带有丑陋黑色边框的矩形形状。它在另一个带有漂亮背景图像的线性布局中看起来很可怕。我想摆脱那个黑色的边界。我搜索过其他SO帖子和google,但却发现我可以使用图层隐藏一些边框。是不是可以直接使用上面shape.xml中的一些技巧?

修改

这是我的布局main.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:orientation="vertical"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent"
              android:background="@drawable/MovieHopBackground"
              android:weightSum="12"
        >
    <ImageView
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="3"
            android:id="@+id/imageView"/>
    <LinearLayout
            android:orientation="horizontal"
            android:layout_width="fill_parent"
            android:layout_height="0"
            android:layout_weight="2"
            android:weightSum="4"
            android:background="@drawable/shape">
        <RelativeLayout
                android:orientation="horizontal"
                android:layout_width="0"
                android:layout_height="fill_parent"
                android:layout_weight="3"

                >
            <EditText
                    android:layout_width="150dp"
                    android:layout_height="50dp"
                    android:background="@drawable/rounded_edittext"
                    android:id="@+id/editText"
                    android:layout_centerInParent="true"
                    />

        </RelativeLayout>
        <RelativeLayout
                android:orientation="horizontal"
                android:layout_width="0"
                android:layout_height="fill_parent"
                android:layout_weight="1"
                >

        </RelativeLayout>
    </LinearLayout>

</LinearLayout>

EDIT2: 以下是ide(裁剪)中的屏幕截图:

enter image description here

2 个答案:

答案 0 :(得分:0)

试试这个

<shape xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="rectangle">
    <solid android:color="#ffffff"/>
    <corners android:radius="10dip"/>
    <stroke android:color="#00000000" android:width="1dp"/>  

</shape>

答案 1 :(得分:0)

首先
在相对布局中将android:layout_width="0"更改为android:layout_width=0dp

下一步下,
<stroke android:width="2dp" android:color="#FFFFFFFF" />

中删除shape.xml

检查@drawable/MovieHopBackground是否有任何可能导致此问题的问题。

我建议您查看this

希望它有所帮助!