添加自定义边框可绘制到android相对布局未显示 - Xamarin Forms



我正在尝试将背景矩形形状添加到 android 中的自定义 RelativeLayout 中,我遵循此处大多数问题的建议,通过在 customborder.xml 中实现自定义可绘制对象并将其设置为custom.axml视图的背景。我也尝试设置相对布局源。

您可以看到我也在图像视图中尝试过它,该视图也没有显示。

我弄乱了大小和颜色,但似乎没有渲染任何东西。

我是否缺少需要在代码中完成的内容?还是 xml?

自定义边框.xml:

<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
    shape="rectangle">
    <corners radius="20dp"/>
    <padding left="50dp" right="50dp" top="50dp" bottom="50dp"/>
    <stroke width="10dp" color="#B2F7FE"/>
    <solid color="white"/>
 </shape>

custom.axml:

    <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="8dp"
android:background="@drawable/customborder">
<ImageView
    android:id="@+id/imageViewBackground"
    android:layout_width="fill_parent"
    android:layout_height="49.0dp"
    android:layout_gravity="center"
    android:background="#ffededed"
    android:adjustViewBounds="false"
    android:alpha="1"
    android:backgroundTint="#00000000"
    android:foreground="@drawable/customborder" />
<refractored.controls.CircleImageView
    android:id="@+id/Image"
    android:layout_width="50dp"
    android:layout_height="50dp"
    android:layout_gravity="center"
    android:src="@drawable/icon" />
<LinearLayout
    android:id="@+id/Text"
    android:orientation="vertical"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:gravity="left"
    android:paddingLeft="10dip"
    android:layout_marginLeft="10.5dp"
    android:background="@drawable/customborder">
    <TextView
        android:id="@+id/Text2"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:textSize="24dip"
        android:textColor="#FFFFFFFF"
        android:paddingLeft="5dip"
        android:text="Test"
        android:layout_marginLeft="46.0dp"
        android:layout_marginTop="12.0dp"
        android:layout_gravity="left" />
    <TextView
        android:id="@+id/Text1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textColor="#FF7F3300"
        android:textSize="20dip"
        android:textStyle="italic" />
</LinearLayout>

请将您的自定义边框.xml文件替换为以下代码,

 <?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<corners
    android:bottomLeftRadius="20dp"
    android:bottomRightRadius="20dp"
    android:topLeftRadius="20dp"
    android:topRightRadius="20dp" />
<padding
    android:bottom="50dp"
    android:left="50dp"
    android:right="50dp"
    android:top="50dp" />
<stroke android:width="10dp" android:color="#B2F7FE"/>
<solid android:color="#ffffff" />
</shape>

你的错误是安卓前缀丢失了。此外,布局中缺少关闭标记。

最新更新