2017-05-17 2 views
0

J'essaye d'ajouter un forme de rectangle d'arrière-plan à un RelativeLayout fait sur commande dans android et je suis les recommandations de la plupart des questions ici en mettant en application un drawable fait sur commande dans customborder.xml et en le définissant comme arrière-plan de la vue custom.axml. J'ai aussi essayé de paramétrer la source relativeLayout.ajoutant la frontière personnalisable drawable à androïde RelativeLayout ne montrant pas - Xamarin Forms

Vous pouvez voir que je l'ai également essayé dans un imageView qui n'apparaît pas non plus. Je ai déconner avec la taille et la couleur, mais rien ne semble être rendu.

Est-ce qu'il me manque quelque chose qui doit être fait dans le code? Ou le xml?

customborder.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> 

+0

Vous avez juste besoin d'appliquer le préfixe android avec chaque élément de customborder.xml. – Sac

Répondre

0

S'il vous plaît remplacer votre fichier customborder.xml avec le code suivant,

<?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> 

Votre erreur était le préfixe android est manquant.Egalement, il vous manque la balise de proximité dans votre mise en page.