これはListFieldを実装するためのコードです。リストを作成します。しかし、私は友人をvectorFriends
から追加すると思っていたにもかかわらず、それは空です。私はブラックベリーアプリを開発するのがとても新しいので、私のエラーはかなり明らかです。誰も私のリストが空である理由を教えてもらえますか?Blackberry:私のListFieldの実装で何が問題になっていますか?
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;
}
私は 'listFriends'を作成し、私はvectorFriends.size'にサイズを設定します() ' 。だから私はそれがそれだとは思わない。 –
ああ、私の悪い、そのビットを逃した... – jprofitt