Ash*_*wal 3 listview blackberry blackberry-eclipse-plugin
是否可以根据以下设计自定义Objectfieldlist?
----------------------------
ROW#1 ROW NAME
row details
---------------------------
ROW#2 ROW NAME
row details
---------------------------
ROW#3 ROW NAME
row details
---------------------------
Run Code Online (Sandbox Code Playgroud)
行名称将以比行详细信息更大的字体显示
基本上我在ObjectListField的一行中需要2个文本行.**或任何其他方法或建议,因为我可能是错的,**请指导我紧急,并且是一些新的Blackberry开发.
ObjectListField这不是真正正确的方法 - ListField当你需要一个简单的字符串列表时,它真的被设计为快速版本.
您应该扩展ListField自己,并提供自己的实现,ListFieldCallback根据您的数据模型呈现您的列表.使用ListField.setCallback设置您的回调.
ListFieldCallback.drawListRow为您提供Graphics上下文,以便您可以绘制任何内容,包括多行文本.另外,请确保调用ListField.setRowHeightlistfield以使行足够高以容纳2行文本(默认高度为字体高度,因此您只有1行文本空间).
示例代码类似于(这不完整,如果没有其他代码则无法编译):
ListField myListField = new ListField();
myListField.setRowHeight(getFont().getHeight() * 2)
myListField.setCallback(new ListFieldCallback() {
public void drawListRow(ListField listField, Graphics graphics, int index, int y, int width) {
// draw the first line of text
graphics.drawText(0, y, "ROW " + rowNumber);
graphics.drawText(20, y, "ROW NAME");
graphics.drawText(20, y + getFont().getHeight(), "row details");
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1252 次 |
| 最近记录: |