0

onCreateView() メソッドで膨らませる linearlayout を使用しているフラグメントを使用しています。フラグメントは右側のペインです。これは、画面が 2 つのフラグメントに分割されていることを意味します。私の線形レイアウトは次のとおりです。

 <LinearLayout
android:layout_Width = "fill_parent"
android:layout_height="wrap_content"
 />


私の問題は、このレイアウトを膨らませたら、 onCreateView() メソッドでこのレイアウトにビューを動的に追加することです。このレイアウトにビューを追加する前に、このレイアウトが占める画面幅の正確な値を知る必要があります。
誰でもこの問題を整理するのを手伝ってくれますか?
前もって感謝します

4

2 に答える 2

1
 l = (LinearLayout)findviewbyid(R.id.l1);
 ViewTreeObserver observer = l.getViewTreeObserver();
    observer.addOnGlobalLayoutListener(new OnGlobalLayoutListener() {

        @Override
        public void onGlobalLayout() {
            // TODO Auto-generated method stub
            init();
        l.getViewTreeObserver().removeGlobalOnLayoutListener(
                this);
    }
});

protected void init() {
    int a= l.getHeight();
        int b = l.getWidth();
Toast.makeText(getActivity,""+a+" "+b,3000).show();
} 
callfragment();
}  

の回答

于 2013-06-29T17:14:33.163 に答える
0

LinearLayout と id を指定し、LinearLayour オブジェクトで getLayoutParams() を使用して幅を取得できます。

于 2013-06-29T17:10:20.000 に答える