3

レイアウトが完全に膨らんだ後にのみ通知を作成したい。

onFinishInflateを使用してビューがいつ膨らんだかを知る方法は、そのようなコールバックがないことを示すこのリンクを参照しました。

onFinishInflate()

また、通知を設定しただけsetContentView()では期待どおりにはなりません。最初に通知が表示され、次にユーザーの視点でビューが拡大されます。

誰かが私を知るのを手伝ってくれますか?

4

2 に答える 2

1

これを試して :

final LinearLayout layout = (LinearLayout)findViewById(R.id.MainLinear);
ViewTreeObserver vtobs = layout.getViewTreeObserver(); 

vtobs.addOnGlobalLayoutListener(new OnGlobalLayoutListener() {          
    @Override
    public void onGlobalLayout() {
        int width  = layout.getMeasuredWidth();
        int height = layout.getMeasuredHeight(); 
        Log.v("SimpleTest", "Width : "+width);
        Log.v("SimpleTest", "Height : "+height);
    }
});

お役に立てば幸いです。

ありがとう。

于 2012-12-14T06:26:43.050 に答える
-1

私はこれを知ることができなかったので、postDelayed()を使用して、しばらくしてから通知を投稿しました:)これを知るためのそのようなコールバックメソッドはありません:(

于 2012-12-19T04:38:23.337 に答える