Attribut "Schwerkraft" (android:gravity
) kann nicht von meiner CustomView abgerufen werden.Wie GetGravity() in der benutzerdefinierten Ansicht?
XML
<MyCustomView
...
android:gravity="right"
/>
My Custom View;
class MyCustomView extends LinearLayout{
...
@Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
getGravity(); //Throws method not found exception
((LayoutParams)getLayoutParams()).gravity; //This returns the value of android:layout_gravity
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
}
...
}
getGravity();
wirft Methode nicht gefunden Ausnahme;
((LayoutParams)getLayoutParams()).gravity;
gibt den Wert von Android: layout_gravity
Gibt es trotzdem ich die Schwerkraft Attribut aus der Sicht bekommen?
Zuerst müssen Sie verstehen, dass die 'Schwerkraft' und' Layout_gravitation' nicht dasselbe sind. http://stackoverflow.com/documentation/android/94/layouts/398/gravity-and-layout-gravity#t=201608101551183172231 –
Ich weiß, bro. Ich denke, Sie sind mit der Frage nicht klar. Ich möchte den Wert des Attributs gravity erhalten, das ich aus meinem Java-Code in XML eingegeben habe. Nicht Layoutgravitation. Ich kann die Layoutgravitation bekommen, aber nicht die Schwerkraft. –
@BartekLipinski Ich glaube nicht, dass er über die beiden verwirrt ist, nur dass er einen bekommt, aber nicht den anderen, und fragt, warum er nicht 'getGravity()' – Doomsknight