我正在尝试在屏幕中央显示一个半透明背景的活动,并在另一个上面绘制一个drawable。 drawable有圆角,我设置了一个带圆角的矩形形状作为布局的背景。形状具有可绘制的背景。问题是我仍然在圆角的抽屉后面有一个黑色的方形边框。有什么办法摆脱黑色边界?
我想我无法发布图片,因为我没有声誉?
以下是布局的xml:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/custom_toast_layout_id"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal"
android:padding="5dp"
android:gravity="center"
android:background="@drawable/myshape" >
<TextView
android:id="@+id/text1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="hello"
android:textColor="#000000"
android:textSize="30sp" />
</RelativeLayout>
以下是形状的xml:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:drawable="@drawable/blank_colordots_test">
<shape android:shape="rectangle" android:padding="10dp">
<corners
android:bottomRightRadius="35dp"
android:bottomLeftRadius="35dp"
android:topLeftRadius="35dp"
android:topRightRadius="35dp"/>
</shape>
</item>
</layer-list>
答案 0 :(得分:2)
试试这段代码:
<强> rounded_drawable.xml 强>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<corners android:radius="15dp" />
<solid android:color="#565656" />
<stroke
android:width="3dp"
android:color="#ffffff" />
<padding
android:bottom="6dp"
android:left="6dp"
android:right="6dp"
android:top="3dp" />
</shape>
声明这种风格:
<style name="ThemeWithCorners" parent="android:Theme.Dialog">
<item name="android:windowNoTitle">true</item>
</style>
在清单中应用此样式。
答案 1 :(得分:0)
这应符合您的要求:
//布局:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="10dp"
android:background="@drawable/myshape"
android:gravity="center">
<TextView
android:id="@+id/text1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="hello"
android:textColor="#000000"
android:textSize="30sp" />
</RelativeLayout>
//形状:
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:bottom="0dp"
android:left="0dp"
android:right="0dp"
android:top="0dp">
<shape android:shape="rectangle">
<solid android:color="#000000" />
<corners android:radius="4dp" />
<stroke
android:width="1dp"
android:color="#000000" />
</shape>
</item>
</layer-list>
答案 2 :(得分:-1)
GradientDrawable border = new GradientDrawable();
border.setColor(Color.rgb(255,255,255));
border.setStroke(8, Color.red);
border.setCornerRadius(20);
yourview.setBackground(border);
您可以尝试上面的代码来为您的布局提供边框。你可以根据你的要求改变角半径和颜色。我用红色作为边框