0

私は持っている:

  1. 整数の配列、たとえば 100000 要素
  2. データを含む ListView は上記の配列の一部です

垂直サイズを変更し、垂直スクロールバーを常に非表示にしながら、ListView を常に塗りつぶしておきたい。つまり、listView.getItems.size()=ListView 内の現在観測可能なセルの数です。

どうやってやるの?助けてください。

4

1 に答える 1

1

私はそれに対する解決策を見つけました。

配列から整数を作成するだけでなく、整数をListView持っています。ObservableList

ListView lv = new ListView();
ObservableList integerArray = FXCollections.observableArrayList();
//set the items
lv.setItems(integerArray);
//add a change listener to the observable list
integerArray.addListener(new ListChangeListener() {
        @Override
        public void onChanged(Change change) {
        //set the height of the ListView accordingly
         lv.setPrefHeight((lv.getItems().size() * 25));
    }
});

したがって、監視可能なリストに何かを追加または削除すると、リスナーがトリガーされ、リストビューのサイズが変更されます

于 2013-03-13T12:22:40.753 に答える