1. Hast Du Lust, bei uns mitzuarbeiten und das AH-Team zu verstärken? Alle Details zu dieser aktuellen Herausforderung findest Du hier.
  1. baileys, 23.09.2010 #1
    baileys

    baileys Threadstarter Junior Mitglied

    Hey Leute,

    habe schon gegoogelt, aber nix produktives gefunden. Wie gibt man einer TextView ein Margin?
     
  2. BenOtto, 23.09.2010 #2
    BenOtto

    BenOtto Android-Hilfe.de Mitglied

    Margin? Als Abstand zu einer anderen View? Dann würde ich sagen android:padding in XML bzw. setPadding() in Java.
     
  3. baileys, 23.09.2010 #3
    baileys

    baileys Threadstarter Junior Mitglied

    In XML kann man margin-Angaben machen aber wie macht man das ganze in Java? Padding hat einen anderen Effekt.
     
  4. BenOtto, 23.09.2010 #4
    BenOtto

    BenOtto Android-Hilfe.de Mitglied

    Wie sieht denn das XML-Attribut aus?
     
  5. baileys, 23.09.2010 #5
    baileys

    baileys Threadstarter Junior Mitglied

    Code:
    <TextView 
    	android:layout_width="90px" 
    	android:layout_height="wrap_content"
    	android:text = "Menü" 
    	android:textSize="16px" 
            android:textColor="@color/font_grey"
    	android:background="@color/background_white" 
    	android:textStyle="bold" 
    	android:shadowRadius="1.5" 
    	android:shadowColor="#CCCCCC" 
    	android:shadowDx="3.0" 
    	android:shadowDy="3.0" 
    	android:layout_marginBottom="5px" 
    	android:layout_marginTop="5px" 
    	android:layout_marginLeft="2px">
    </TextView>
    
     
  6. Fr4gg0r, 23.09.2010 #6
    Fr4gg0r

    Fr4gg0r App-Anbieter (Werbung)

    über die LayoutParams

    LinearLayout.LayoutParams myParams = new LinearLayout.LayoutParams(1,1);
    myParams.setMargins(20,0,20,0);
    myTextView.setLayoutParams(myParams);

    Du setzt hier jedoch px und keine dpi...
     
  7. baileys, 24.09.2010 #7
    baileys

    baileys Threadstarter Junior Mitglied

    Hab ich versucht, aber da zeigt es mir meine TextView gleich gar nicht mehr an.

    Code:
    TextView tv1 = new TextView(this);
    tv1.setText("text");
    tv1.setGravity(Gravity.CENTER);
    tv1.setWidth(20);
    tv1.setTextColor(R.color.font_grey);
    tv1.setPadding(2, 2, 0, 0);
    LinearLayout.LayoutParams myParams = new LinearLayout.LayoutParams(1,1);
    myParams.setMargins(0,0,0,1);
    tv1.setLayoutParams(myParams);
    tr.addView(tv1);		
    
     
    Zuletzt bearbeitet: 24.09.2010
  8. Fr4gg0r, 24.09.2010 #8
    Fr4gg0r

    Fr4gg0r App-Anbieter (Werbung)

    ja das passiert wenn man code snippets aus dem Kopf schreibt^^
    Übergib mal statt 1 LayoutParams.WRAP_CONTENT
     
  9. baileys, 24.09.2010 #9
    baileys

    baileys Threadstarter Junior Mitglied

    Hatte ich auch schon ausprobiert, aber ergibt das gleiche Problem.

    LogCat bringt keine Fehlermeldung.
     
  10. BenOtto, 24.09.2010 #10
    BenOtto

    BenOtto Android-Hilfe.de Mitglied

    Ich würde mal behaupten, dass du Margin von 1px nicht sehen kannst. Nimm mal einen höheren Wert.
     
  11. baileys, 24.09.2010 #11
    baileys

    baileys Threadstarter Junior Mitglied

    Hab ich gemacht. Aber das TextView ist ja gar nicht mehr zu sehen sobald die LayoutParams gesetzt sind. Komisch...
     
  12. BenOtto, 24.09.2010 #12
    BenOtto

    BenOtto Android-Hilfe.de Mitglied

    Code:
    LinearLayout.LayoutParams params2 = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);
    params2.setMargins(20, 20, 20, 20);
    
    TextView t2 = new TextView(this);
    t2.setLayoutParams(params2);
    t2.setText("Test");
    t2.setBackgroundColor(Color.MAGENTA);
    t2.setPadding(10, 10, 10, 10);
    
    Versuch das mal mit konstanten Werten, also ohne deinen Warenkorb.

    Und im Konstruktor hast du jetzt LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT genommen, anstatt 1, 1, ja?
     
  13. baileys, 24.09.2010 #13
    baileys

    baileys Threadstarter Junior Mitglied

    Zeigt das TextView immernoch nicht an.

    Code:
    TextView tv1 = new TextView(this);
    tv1.setText("text");
    tv1.setGravity(Gravity.CENTER);
    tv1.setWidth(20);
    tv1.setTextColor(R.color.font_grey);
    tv1.setPadding(2, 2, 0, 0);
    LinearLayout.LayoutParams myParams = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
    myParams.setMargins(0,0,0,10);
    tv1.setLayoutParams(myParams);
    tr.addView(tv1);		
    
     
  14. BenOtto, 24.09.2010 #14
    BenOtto

    BenOtto Android-Hilfe.de Mitglied

    Wie sieht denn dein tr aus?
     
  15. baileys, 27.09.2010 #15
    baileys

    baileys Threadstarter Junior Mitglied

    XML:

    Code:
    <TableRow 
         android:id="@+id/TableRow" 
         android:layout_width="wrap_content" 
         android:layout_height="fill_parent" 
         android:background="@color/background_white" 
         android:layout_marginTop="1px">
    </TableRow>
    
    Code:
    TableLayout tl = (TableLayout)findViewById(R.id.TableWarenkorb);
    			
    TableRow tr = new TableRow(this);
    tr.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.FILL_PARENT));
    tr.setBackgroundColor(R.color.background_white);    
    		     
    TextView tv1 = new TextView(this);
    tv1.setText("text");
    tv1.setGravity(Gravity.CENTER);
    tv1.setWidth(20);
    tv1.setTextColor(R.color.font_grey);
    tv1.setPadding(2, 2, 0, 0);
    LinearLayout.LayoutParams myParams = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
    myParams.setMargins(0,0,0,10);
    tv1.setLayoutParams(myParams);
    tr.addView(tv1);	
    
     
    Zuletzt bearbeitet: 27.09.2010
  16. BenOtto, 27.09.2010 #16
    BenOtto

    BenOtto Android-Hilfe.de Mitglied

    Du hast recht... das ist nicht wirklich möglich... scheint ein Bug oder ein Denkfehler in unseren Köpfen zu sein.

    Das wenigstens etwas angezeigt wird habe ich hiermit erreicht:
    Code:
    		TextView tv = new TextView(this);
    		LayoutParams lp = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
    		MarginLayoutParams mlp = new MarginLayoutParams(lp);
    		mlp.setMargins(0, 0, 0, 10);
    		//tv.setLayoutParams(mlp);
    		tv.setText("test");
    		
    		LinearLayout ll = new LinearLayout(this);
    		//ll.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
    		ll.addView(tv, mlp);
    		
    		TableRow tr = new TableRow(this);
    		//tr.setLayoutParams(new TableRow.LayoutParams(TableRow.LayoutParams.WRAP_CONTENT, TableRow.LayoutParams.FILL_PARENT));
    		tr.setBackgroundColor(Color.WHITE);
    		tr.addView(ll, new TableRow.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
    		
    		TableLayout tl = new TableLayout(this);
    		tl.setLayoutParams(new TableLayout.LayoutParams(TableLayout.LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
    		tl.addView(tr, new TableLayout.LayoutParams(TableRow.LayoutParams.WRAP_CONTENT, TableRow.LayoutParams.FILL_PARENT));
    		
    		setContentView(tl);
    
     
Die Seite wird geladen...
Ähnliche Themen Forum Datum
[OFFEN] SQLITE insert gibt negative id zurück Android App Entwicklung 18.09.2017
[OFFEN] TextView verändert Inhalt nicht, nachdem anderer Map Marker angeklickt wird Android App Entwicklung 06.04.2017
[ERLEDIGT] TextView text "Heute ist der dd.MM.yyyy" funktioniert überhaupt nicht Android App Entwicklung 08.03.2017
Auswahl mehrerer RadioButton in einem TextView ausgeben Android App Entwicklung 23.02.2017
TextView in den Vordergrund bringen Android App Entwicklung 13.02.2017

Users found this page by searching for:

  1. TextView para

    ,
  2. textview margin of text android

    ,
  3. android abstand von oben

    ,
  4. android view margin,
  5. android margin padding,
  6. android abstände 2 linearlayout,
  7. text margin textview,
  8. android margin
Du betrachtest das Thema "Wie gibt man einer TextView ein Margin?" im Forum "Android App Entwicklung",