[英]libGDX: How can I detect Scrollpane is scrolled at max Y?
當播放器最后滾動時,我需要在列表中添加新項目。 因此,如何檢測到達最底端或最大Y
的Scrollpane
?
private Table list;
private ScrollPane scrollPane;
private void buildPlayersList() {
list = new Table();
scrollPane = new ScrollPane(list);
}
private boolean isTheEnd() {
// condition !!!
return scrollPane.getScrollY() >= scrollPane.getMaxY();
}
@Override
public void onTheEndRequest() {
int offset = list.getRows();
int limit = 10;
Actor player = this.getPlayer(offset, limit);
list.add(player).row();
}
private Actor getPlayer(int offset, int limit) {
// retrieve player from database
// ......
Player player = database.getPlayer();
Label label = new Label(player.getName(), style);
return label;
}
就像在另一個問題中提到的那樣,您可以使用ChangeListener查找對getScrollY的更改以執行ScrollY和MaxY的比較。
s1.vvalueProperty().addListener(new ChangeListener<Number>() {
public void changed(ObservableValue<? extends Number> ov,
Number old_val, Number new_val) {
// if ScrollY == maxY; then displayMoreItems
System.out.println(new_val.intValue());
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.