2010-09-07 7 views
1

Je veux avoir 3 edittext avec haut et bas ayant topleft et topright courbes mais en bas à gauche et en bas à droite droite. J'ai essayé d'utiliser la formeAndroid Edittext topleft et topright seulement arrondi

mais il fait tous les coins arrondis. Si j'essaie d'utiliser bottomRightRadius, alors je reçois une exception.

J'ai donc essayé différentes façon de le faire

en utilisant la marge -ve afin que le fond sur cache la courbe de la partie supérieure. Mais maintenant, en bas, on va derrière le supérieur. Il n'y a rien comme goToBottom ou GoToTop :(

Toute aide est appréciée

Répondre

3

Essayez de définir le rayon des coins que vous voulez ne pas voir arrondi à la valeur proche de 0 (mais pas 0):

<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> 
    <solid android:color="#eeffffff" /> 
    <corners android:bottomRightRadius="5dip" 
     android:bottomLeftRadius="5dip" android:topRightRadius="0.1dip" 
     android:topLeftRadius="0.1dip"/> 
</shape> 
2

vous devez définir l'androïde. attribut rayon au moins 1dip afin d'obtenir tous les coins arrondis affiché

Ensuite, vous allez comme ça

<?xml version="1.0" encoding="UTF-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="rectangle"> 
    <solid android:color="#ffffff" /> 
    <corners 
     android:radius="1dip" 
     android:topLeftRadius="10dip" 
     android:topRightRadius="10dip" 
     android:bottomLeftRadius="0dip" 
     android:bottomRightRadius="0dip" /> 
</shape> 
.

Vous l'enregistrez en tant que background.xml dans le sous-répertoire drawable. Ensuite, vous le définissez comme l'arrière-plan EditText en utilisant

android:background="@drawable/background" 

Cela devrait vous obtenir la sortie désirée.