2011-07-06 9 views
13

私はこのようなレイアウトを実装する必要があります。レイアウト内のコンテンツが少ない場合、レイアウトはコンテンツをラップする必要があります。コンテンツが300dpのようなある程度のサイズを超えている場合は、最大の長さ(300dp)に設定してスクロールできるようにする必要があります。回避策がない場合、これを行うためのプロパティはありますか?アンドロイドのレイアウトの最大高さを設定する方法は?

+0

これに関する解決方法はありますか? – rizzz86

+1

'ScrollView'に' maxHeight'を提供する解決策が見つかりました。このソリューションは、あらゆるタイプのビューにも使用できます。このようなシンプルで簡単な方法については、http://chintanrathod.com/maxheightscrollview-in-android-using-android-studio/ –

答えて

7

デバイスのディスプレイサイズを見つけることができます。表示サイズに合わせてlayout paramsを設定することができます。たとえば、表示サイズが300dp未満の場合は、heightwrap contentと設定できます。 300dpより大きい場合はheight300dpと設定することを意味します。ここ

はサンプルコードです:

WindowManager wm = (WindowManager) ctx.getSystemService(Context.WINDOW_SERVICE); 


    DisplayMetrics metrics = new DisplayMetrics(); 
    wm.getDefaultDisplay().getMetrics(metrics); 


    //here you can get height of the device. 
    Log.d("check", metrics.heightPixels+""); 
    if(metrics.heightPixels< 300) 
    { 
     this.getWindow().setLayout(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT); 

    } 
    else { 
     this.getWindow().setLayout(LayoutParams.WRAP_CONTENT,300); 

    } 

この1つはあなたを助けることができると思います。

+1

+1をお読みください。 –

関連する問題