1
我需要得到我的視圖的高度和寬度,我已經遵循這裏給出的例子與子類View和使用onSizeChanged(...)。 但是很奇怪的是,onSizeChanged給了我正確的寬度,但高度始終爲0。這裏是我的子類:onSizeChanged返回寬度,但不是高度
public class MyView extends TextView {
int xMax=0; int yMax=0;Context c;
public MyView(Context context) {
super(context);
this.c=context;
}
@Override
public void onSizeChanged(int w, int h, int oldW, int oldH) {
xMax = w;
yMax = h;
我的動態類:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView dummyView = new MyView(this);
LinearLayout ll = (LinearLayout) findViewById(R.id.mainmtc);
ll.addView(dummyView);
和我的XML佈局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/mainmtc" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:weightSum="1"
androiad:orientation="vertical">
會做(我是新來的StackOverflow)。但是,我的問題的解決方案是什麼?所有發現的例子從未提及過這種情況? – michaelsmith 2012-01-08 12:18:39
現在這樣做了,但高度仍然是0.當旋轉設備時,我改變寬度,但不是高度。我需要獲取設備屏幕的尺寸。我採取了正確的方法嗎? – michaelsmith 2012-01-08 12:26:28
設備屏幕尺寸可以通過DisplayMetrics類檢索 – ChristopheCVB 2012-01-08 12:27:54