[英]onSizeChanged returns width, but not height
我需要獲得我的View的高度和寬度,我已經按照這里給出的子類View和使用onSizeChanged(...)的示例。 但是很奇怪的是onSizeChanged給了我正確的寬度,但是高度總是0.這是我的子類:
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;
我的Activity類:
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">
我認為這是正常的,你的視圖中沒有內容所以高度為0。
嘗試在自定義textview中添加一些文本,高度會發生變化
TextView dummyView = new MyView(this);
dummyView.setText("Hello");
設備屏幕尺寸: http : //developer.android.com/reference/android/util/DisplayMetrics.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.