3
我需要知道我是否可以從我的主要活動中獲取計算出的數字,並從layout.xml中訪問它。是否有可能從layout.xml android中的活動獲取變量的值?
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
DisplayMetrics displaymetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);
int height = displaymetrics.heightPixels;
int width = displaymetrics.widthPixels;
float margin_top = (1920f/height) * 125;
String margin_top_str = Float.toString(margin_top) + "dp";
}
layout.xml代碼
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/app_name"
android:id="button"
android:background="#f57878"
android:textSize="48dp"
android:layout_alignParentTop="true"
android:layout_marginTop="@MainActivity.java/margin_top_str"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:textColor="#000000" />
線android:layout_marginTop="@MainActivity.java/margin_top_str"
是不存在的,只是表明我需要什麼。如果我所要求的只能在可以正常工作的活動中完成。附:我是一個noob。謝謝
你爲什麼不在java代碼中設置邊距? –