0
가로형 관리자에서 이벤트를 표시하려고합니다. 여러 이벤트가 있다고 말합니다. 이제는 10 개의 이벤트가 표시되고 5 개의 가로 관리자를 표시하는 두 개의 이벤트가 표시됩니다. 나머지 10 개 이벤트. 한 행에 하나의 이벤트를 표시하려면 아래 스 니펫을 사용하십시오. 아래 스 니펫을 편집하여 한 행에 두 개의 이벤트를 얻는 방법은 여기 이벤트가 labelfield에 추가됩니다.가로 관리자를 나누는 방법
VerticalFieldManager vfm = new VerticalFieldManager();
int allDayVectorSize = allDayVector.size();
horizontalFieldManager_isAllDay = new HorizontalFieldManager[allDayVectorSize];
allDayLabel = new LabelField[allDayVectorSize];
row_height = 90;
int j = 0;
int row_count = 0;
if (allDayVectorSize != 0) {
for (int i = 0; i < allDayVectorSize; i++) {
final String allEvent = (String) allDayVector.elementAt(i);
horizontalFieldManager_isAllDay[row_count] = new HorizontalFieldManager(
Manager.FOCUSABLE | Manager.HORIZONTAL_SCROLL) {
protected boolean navigationClick(int status, int time) {
Field field = getFieldWithFocus();
Vector data = getData(listEvent);
if (allEvent != null && allEvent != "") {
System.out.println("Currentdata in if" + allEvent);
UiApplication.getUiApplication().pushScreen(
new EventScreen(data, allEvent, ""));
}
return super.navigationClick(status, time);
}
protected boolean keyChar(char key, int status, int time) {
Field field = getFieldWithFocus();
return super.keyChar(key, status, time);
}
protected void sublayout(int maxWidth, int maxHeight) {
int displayWidth = Display.getWidth();
int displayHeight = 30;
super.sublayout(displayWidth, displayHeight);
setExtent(displayWidth, displayHeight);
}
};
horizontalFieldManager_isAllDay[row_count].setPadding(2, 2, 2,
2);
allDayLabel[row_count] = new LabelField(allEvent,
LabelField.FOCUSABLE) {
protected void layout(int maxWidth, int maxHeight) {
int displayWidth = (int) (Display.getWidth()/2);
int displayHeight = maxHeight;
super.layout(displayWidth, displayHeight);
setExtent(displayWidth, displayHeight);
}
};
// allDayLabel[row_count].setPadding(5, 0, 0, 2);
final ImageButtonField alarmBitmapField2 = new ImageButtonField(
"", Field.FOCUSABLE, "ringtone.png", "ringtone.png",
0x9cbe95);
horizontalFieldManager_isAllDay[row_count]
.add(alarmBitmapField2);
horizontalFieldManager_isAllDay[row_count]
.add(allDayLabel[row_count]);
vfm.add(horizontalFieldManager_isAllDay[row_count]);
vfm.add(new SeparatorField());
}
}
당신은 스크린 샷으로 제공 할 수 있습니까? – alishaik786
내 ui는 네이티브 캘린더 UI와 동일합니다. 여기에 이벤트가 나열됩니다. 한 개의 행에 두 개의 레이블을 표시하고 10 개의 레이블이있는 경우 5 개의 행을 만들어야합니다. @ alishaik786 –
레이아웃의 스크린 샷 또는 스케치를 첨부합니다. 필요. – Rupak