Я написал класс, который реализует ListFieldCallBack,
import java.util.Vector;
import net.rim.device.api.ui.Graphics;
import net.rim.device.api.ui.component.ListField;
import net.rim.device.api.ui.component.ListFieldCallback;
class ListCallBack implements ListFieldCallback
{
private Vector listelements = new Vector();
public void drawListRow(ListField listField, Graphics graphics, int index, int y, int width)
{
String text = (String)listelements.elementAt(index);
graphics.drawText(text,0,y,0,width);
}
public Object get(ListField listField, int index)
{
return listelements.elementAt(index);
}
public int indexOfList(ListField listField, String prefix, int start)
{
return listelements.indexOf(prefix, start);
}
public int getPreferredWidth(ListField listField)
{
return Graphics.getScreenWidth();
}
public void insert(String toInsert, int index)
{
listelements.addElement(toInsert);
}
public void erase()
{
listelements.removeAllElements();
}
}
И в моем конструкторе основной класс закодирован как
helloWorld()
{
mylist = new ListField();
ListCallBack myCallBack = new ListCallBack();
mylist.setCallback(myCallBack);
for(int i = 0; i<array.length;i++)//array is a string array
{
list_category.insert(i);
myCallBack.insert(array[i], i);
}
this.add(list_category);
}
это работает правильно ..
как, я получаю вывод, как,
Aby
Eric
Allay
vine
Но я хочу добавить еще одну строку к следующему из этого массива в каждой строке, отображаемой в списке. Как я могу это сделать?
Как, например, я хочу, чтобы мой экран выводился как,
Aby : Smart
Eric : 0000
Allay : 9789
vine : Like
как я могу это сделать?