gpt4 book ai didi

java - Blackberry:我的 ListField 实现有什么问题?

转载 作者:行者123 更新时间:2023-12-02 00:39:31 24 4
gpt4 key购买 nike

这是我实现 ListField 的代码。它创建一个列表;然而,即使我认为我从 vectorFriends 添加好友,它还是空的。我对开发黑莓应用程序非常陌生,所以我确信我的错误非常明显。谁能告诉我为什么我的列表是空的?

public class HomeScreen extends MainScreen implements FieldChangeListener, ListFieldCallback{
private ListField listFriends;
private Vector vectorFriends;
private Friend _selectedPerson = null;

public HomeScreen(){
vectorFriends = User.getMyUser().getFriends();

this.add(new LabelField("Friends"));
listFriends = new ListField(vectorFriends.size());
listFriends.setCallback(this);
this.add(listFriends)
}


//implemented ListFieldCallback methods
//draw current row
public void drawListRow(ListField list, Graphics g, int index, int y, int w) {
Friend personToDraw = (Friend) this.get(list, index);
int drawColor = Color.BLACK;
g.setColor(drawColor);
g.drawText(personToDraw.getFullName(), 0, y, 0, w);
}

// get the selected index from the correct Vector
public Object get(ListField list, int index) {
return vectorFriends.elementAt(index);
}

public void insert(String toInsert, int index) {
vectorFriends.insertElementAt(toInsert, index);
}


public int getPreferredWidth(ListField list) {
return Display.getWidth();
}

public int indexOfList(ListField listField, String prefix, int start) {
// Not a correct implementation - this is really just commented out
return start;
}

public int getPreferredWidth(ListField list) {
return Display.getWidth();
}

public int indexOfList(ListField listField, String prefix, int start) {
// Not a correct implementation - this is really just commented out
return start;
}

最佳答案

vectorFriends 可能是空的吗?

此外,您的 insert() 方法正在将 String 对象添加到 vector 中,而 drawListRow() 方法正在转换为 Friend。这些是不一致的。

关于java - Blackberry:我的 ListField 实现有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6767228/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com