Layout-Rand für die Textansicht programmgesteuert

7

Wenn ich eine XML-Datei verwende, habe ich eine Option namens layout_margin (zum Beispiel layout_margin="1dp" für die Textansicht), aber ich möchte programmgesteuert einstellen und ich weiß nicht, wie es geht.

    
sivan esan 16.07.2012, 12:47
quelle

8 Antworten

12
%Vor%     
Andro Selva 16.07.2012 12:52
quelle
6

Bitte Google, bevor Sie Ihre Frage zu StackOverflow hinzufügen.

%Vor%     
MicroEyes 16.07.2012 12:54
quelle
3

Sie können Folgendes tun:

%Vor%     
AkashG 16.07.2012 12:57
quelle
2
%Vor%     
Nermeen 16.07.2012 12:51
quelle
2

Beachten Sie, dass nicht alle LayoutParams die Methode setMargins ();

haben

RelativeLayout, LinearLayout usw. haben ihre eigenen inneren Klassen-LayoutParams, daher ist die Verfügbarkeit von setMargins nicht immer verfügbar.

    
ViliusK 09.05.2013 11:34
quelle
1

Versuchen Sie Folgendes: Es hat funktioniert ....

%Vor%     
Ankita 18.05.2015 10:09
quelle
0

Sie können setMargins() für LinearLayout.LayoutParams verwenden. Weitere Informationen finden Sie in der Antwort zu dieser StackOverflow-Frage .

    
Angelo 16.07.2012 12:52
quelle
0
%Vor%

getLayoutParams () von textview sollte basierend auf dem Parent der Textansicht in xml in die entsprechenden Params gegossen werden.

%Vor%

Wenn Parent der TextView RelativeLayout ist, dann RelativeLayout.LayoutParams wie oben. Wenn übergeordnet ist LinearLayout bedeutet dann

%Vor%

Um dieselbe reale Größe auf verschiedenen Geräten darzustellen, verwenden Sie die Methode DptoPxConversion (), die ich oben verwendet habe. setMargin (links, oben, rechts, unten) Parameter werden Werte in Pixel nicht in dp .

    
Anandha Krishnan 06.09.2017 13:08
quelle

Tags und Links