2010-12-07 13 views
3

J'ai un problème que je veux définir la position du texte à partir de l'emplacement particulier. par exemple: j'ai ce texte dans mon textview: « ABCD EFGH ijkl mnop QRSTU vwxyz » Maintenant, je veux ce texte pour montrer de l'emplacement « EFGH » plutôt que « ABCD » Comment puis-je effectuer cette opération en textview. Je veux changer la position du texte et non la position du texte. MerciComment puis-je définir la position du texte?

+0

Qu'est-ce que est-ce que cela a à voir avec la position? Supprimez simplement l'abcd de la chaîne. – Falmarri

+0

Je dois faire cette chose en condition particulière seulement pas partout – Nikki

+0

@Falmarri: C'est un exemple ... – kcoppock

Répondre

5

Nikki, ajoutez simplement un attribut marginLeft à votre TextView comme ceci:

<TextView 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="15dp" 
    android:text="Testing" 
    /> 

où vous remplacez juste valeur de votre choix pour la marge de gauche.

EDIT: Pour le code, vous devriez être en mesure d'utiliser les éléments suivants:

TextView tv = new TextView(this); 
LayoutParams lp = new LayoutParams(
    LayoutParams.FILL_PARENT, 
    LayoutParams.WRAP_CONTENT); 
lp.setMargins(left, top, right, bottom); //use ints here 
tv.setLayoutParams(lp); 

Et juste pour l'enfer, voici comment le faire en une ligne :)

TextView tv = new TextView(this).setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT).setMargins(left, top, right, bottom)); 
+0

mais cela va définir la position du texte et je veux définir la position du texte et pas la position du texte. – Nikki

+0

Alors c'est encore plus simple. Utilisez juste 'tv.setPadding (gauche, haut, droite, bas)' où "left" est la distance du bord du TextView. – kcoppock

+0

ok !! Merci ............ :) – Nikki

Questions connexes