私のアプリケーションでは、アダプタを使用してディスプレイリストビューを表示します。しかし、私は現在の高さとリストビューの幅を取得したい(アダプタを使用してリストを生成した後の手段)。それを得る方法。誰も私を助けることができます。アンドロイド - リストビューの幅と高さを動的に取得する方法
おかげ
私のアプリケーションでは、アダプタを使用してディスプレイリストビューを表示します。しかし、私は現在の高さとリストビューの幅を取得したい(アダプタを使用してリストを生成した後の手段)。それを得る方法。誰も私を助けることができます。アンドロイド - リストビューの幅と高さを動的に取得する方法
おかげ
使用getWidth()
とonWindowFocusChanged
でのListViewのgetHeight()
方法は、幅と高さを取得します。
@Override
public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);
System.out.println("Width:" + listview.getWidth());
System.out.println("Height:" + listview.getHeight());
}
現在の幅または任意のビューの高さを取得するには、あなたがonLayoutChange
リスナー
public class MainActivity extends Activity implements OnLayoutChangeListener {
private View newView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
newView = getLayoutInflater().inflate(R.layout.main_activity, null);
newView.addOnLayoutChangeListener(this);
setContentView(newView);
}
public void onLayoutChange(View v, int left, int top, int right,
int bottom, int oldLeft, int oldTop, int oldRight, int oldBottom) {
//Here you can get size of you ListView, e.g:
mylistView.getWidth();
}
@Override
protected void onDestroy() {
super.onDestroy();
newView.removeOnLayoutChangeListener(this);
}
}
27Nov15を設定する必要があります - これは良い答えですが、私はあなたがあまりにもかかわらず、リソースを解放するべきだと思います。これはアクティビティにとってはそれほど重要ではないかもしれませんが、より頻繁に出て行く可能性があるフラグメントでも同じアプローチを使用できます。
私はこのコードを入れています。私は方法を作成すると思います。 – naresh