Mit dem folgenden Java- und XML-Code habe ich mich gefragt, wie man die Dimensionen eines inneren/untergeordneten Layouts (LinearLayout, während das Elternelement RelativeLayout mit 20pd Padding ist) richtig abbildet :Die Größe eines inneren Layouts in Pixeln ermitteln
Java-Code:
public class TestActivity extends Activity {
private LinearLayout linLay;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test);
linLay = (LinearLayout)findViewById(R.id.linLay);
RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,
RelativeLayout.LayoutParams.MATCH_PARENT);
linLay.setLayoutParams(lp);
getDimensions();
}
private void getDimensions() {
System.out.println(linLay.getHeight());
System.out.println(linLay.getWidth());
}
}
XML:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="20dp" >
<LinearLayout
android:id="@+id/linLay"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true">
</LinearLayout>
</RelativeLayout>
... Da ich Ausgänge von 0 für die Dimensionen, ich bin mir dessen bewusst, dass die Linearlayout zu b braucht Ich setze zuerst auf dem Bildschirm, bevor ich die Dimensionen abrufen konnte ... Aber was mache ich hier falsch?
http://stackoverflow.com/questions/7474572/which-activity-method-is-called-after-all-the-layout-methods-was-made – Entreco