我正在开发一个应该使用嵌套horizontalmanagers的应用程序。我正在服用内部和外部的HFM。当我滚动字段时,innerHFM的字段会在outerHFM上重叠。如何为innerHFM使用setExtent方法。我的innerHFM包含像1、2、3、4、5这样的字段,我的outerHFM包含下一步和上一步按钮。下面是我实现的代码
outerHFM = new HorizontalFieldManager() {
protected void sublayout(int maxWidth, int maxHeight) {
layoutChild(next, maxWidth, maxHeight);
setPositionChild(next, 300, 5);
layoutChild(innerHfm, 200, maxHeight);
setPositionChild(innerHfm, 10, 5);
layoutChild(previous, maxWidth, maxHeight);
setPositionChild(previous, 44, 5);
setExtent(maxWidth, 40);
}
};
innerHfm = new HorizontalFieldManager(Manager.HORIZONTAL_SCROLL|Manager.USE_ALL_WIDTH) {
protected void sublayout(int maxWidth, int maxHeight) {
int space = 0;
int x = 90;
for (int i = 0; i < cardsSize; i++) {
layoutChild(numbtn[i], 210, maxHeight);
setPositionChild(numbtn[i], x + space+offset, 0);
space = space + 50;
}
setExtent(240, 40);
}
};发布于 2011-03-10 15:21:21
嗨,这个大小适用于我所有的现场经理。
int managerWidth;
int managerHeight;
public int getPreferredWidth() {
return managerWidth;
}
public int getPreferredHeight() {
return managerHeight;
}
public void sublayout(int w, int h) {
super.sublayout(managerWidth, managerHeight);
setExtent(managerWidth, managerHeight);
}也许手动定位可能有问题,你可以使用AbsoluteFieldManager代替...
https://stackoverflow.com/questions/5248239
复制相似问题