ChoiseGroup não aparece correto no celular

Fiz uma aplicação aqui e utilizei um choisegroup, que é montado a partir de um arquivo xml. No emulador ele funciona corretamente, mas quando passei pro Motorola W510, não apareceu correto… o que será que aconteceu???

Poste o codigo que voce fez e detalhe mais qual tipo de erro aconteceu, para que possamos ajuda-lo.
Voce testou em qual emulador? Lembre-se que cada celular renderiza a aplicação do seu proprio modo, podendo causar esses problemas mesmo

vamos lá! o código da aplicação é esse… quanto ao erro, ele exibe como se fosse um textfield, estranho, nem da pra explicar certinho… ainda vou testar em outros aparelhos pra ver

[code]
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import javax.microedition.io.Connector;
import javax.microedition.io.HttpConnection;
import javax.microedition.midlet.;
import javax.microedition.lcdui.
;
import org.kxml2.io.KXmlParser;
import org.xmlpull.v1.XmlPullParser;

public class Eleicoes2008 extends MIDlet implements CommandListener{

Display display;
Form form1 = new Form("Eleiçoes 2008 - Prefeito"); //Formulário para escolha do prefeito
Form form2 = new Form("Eleições 2008 - Vereador"); //Formulário para escolha do vereador
Form form3 = new Form("Confirmar votação"); //Formulário de confirmação

//Cria os botões utilizados durante a aplicação
Command cmSair = new Command("Sair", Command.EXIT, 1);
Command cmVotar = new Command("Votar", Command.SCREEN, 2);
Command cmRetornar = new Command("Retornar", Command.EXIT, 1);
Command cmConfirmar = new Command("Confirmar", Command.SCREEN, 2);
private int choiceGroupIndex;
private StringItem siPrefeito;
private StringItem siVereador;
ChoiceGroup cgPrefeito; //Grupo de escolha
TextField tf; //Campo de texto

String votoPrefeito = "";
String votoVereador = "";

String url="127.0.0.1:8080";

InputStream in; //Guardará a Stream enviada pelo servidor

//Método que acessa o arquivo xml no servidor
protected void acessaXML() {
	Thread t=new Thread (){
		public void run() {
			try {
				//Abre a conexão
				HttpConnection con = (HttpConnection)Connector.open("http://" + url + "/Eleicoes2008/votacao.xml");
				in = con.openInputStream();
				
				parser(in); //Chama o método que inicia a tradução do XML
	
			} catch (IOException ex) {
				ex.printStackTrace();
			}
			catch (Exception e) {
				e.printStackTrace();
			}
		}
	};
	t.start();
}

//Faz outra conexão e envia os candidatos escolhidos
protected void enviaVoto() {

	Thread t=new Thread() {
		public void run() {
			String situacao = "";
			StringBuffer mensagem = new StringBuffer();
			try
			{
				HttpConnection con = (HttpConnection)Connector.open("http://" + url + "/Eleicoes2008/Eleicoes2008?votoP=" + votoPrefeito + "&votoV=" + votoVereador);
				int status = -1;
				status = con.getResponseCode();

				if (status == HttpConnection.HTTP_OK) {
					InputStream is = con.openInputStream();
					int lido = is.read();
					lido = is.read();
					lido = is.read();
					while (lido != -1) {
						byte b1 = (byte) lido;
						mensagem.append( (char) b1);
						lido = is.read();
					}
					situacao = mensagem.toString();
				}
				else {
					situacao = "Erro na Conexão";
				}
				form3.append(situacao);
			}
			catch (IOException e) {
			}
		}
	};
	t.start();
	form3.removeCommand(cmRetornar);
	form3.removeCommand(cmConfirmar);
	form3.addCommand(cmSair);
	display.setCurrent(form3);
	//form3.setCommandListener(this);
}

protected void startApp() throws MIDletStateChangeException{

	acessaXML();
	display = Display.getDisplay(this); //Referência ao objeto Display

	//Seta os elementos do Form1 (Prefeito)
	cgPrefeito = new ChoiceGroup("Escolha seu candidato a prefeito", Choice.EXCLUSIVE);
	form1.append(cgPrefeito);
	form1.addCommand(cmSair);
	form1.addCommand(cmVotar);
	form1.setCommandListener(this);	

	display.setCurrent(form1);

	//Seta os elementos do Form2 (Vereador)
	tf = new TextField("Digite o número do seu candidato a vereador: ", "", 10, TextField.ANY);
	form2.append(tf);
	form2.addCommand(cmRetornar);
	form2.addCommand(cmVotar);
	form2.setCommandListener(this);

	//Seta os elementos do Form3 (Confirmação)
	form3.addCommand(cmRetornar);
	form3.addCommand(cmConfirmar);
	form3.setCommandListener(this);
}

private void parser(InputStream in) throws Exception {

	//inicia o xmlparser
	KXmlParser parser = new KXmlParser();
	parser.setInput(new InputStreamReader(in));

	parser.nextTag();

	//posiciona na primeira tag <votacao>
	String tag_inicio = parser.getName();
	System.out.println("Início: " + tag_inicio);
	parser.require(XmlPullParser.START_TAG, null, tag_inicio); 

	//enquanto é diferente de end_tag
	while (parser.nextTag() != XmlPullParser.END_TAG) {
		
		//posiciona na tag <prefeito>
		parser.require(XmlPullParser.START_TAG, null, "prefeito");
		parserPrefeito(parser);
		form1.append("\n");
		parser.require(XmlPullParser.END_TAG, null, "prefeito");
	}

	parser.require(XmlPullParser.END_TAG, null, tag_inicio);
	parser.next();

	parser.require(XmlPullParser.END_DOCUMENT, null, null);
}

private void parserPrefeito(KXmlParser parser) throws Exception {
	
	//enquanto é diferente de </prefeito>
	while (parser.nextTag() != XmlPullParser.END_TAG) {

		//posiciona em uma tag "start". ex: <nome>
		parser.require(XmlPullParser.START_TAG, null, null);

		String name = parser.getName();
		String text = parser.nextText();
	
		System.out.println("Tag: " + name + " -> " + text);

		//adiciona como um item do menu
		cgPrefeito.append(text, null);
		
		//adiciona o texto no form
		//form.append(text);

		//posiciona no fim da tag </nome>
		parser.require(XmlPullParser.END_TAG, null, name);
	}
}

public void pauseApp() {
}

public void destroyApp(boolean unconditional) {
	notifyDestroyed();
}

//Função que trata as ações dos botões da aplicação
public void commandAction(Command c, Displayable s) {
	if (s == form1) {
		if(c == cmSair)	{
			destroyApp(true);
			notifyDestroyed();
		}
		else if (c == cmVotar) {
			//se for confirmado o voto para prefeito, seta para a formulário do vereador
			display.setCurrent(form2);
		}
	}

	else if (s == form2) {
		if (c == cmRetornar) {
			display.setCurrent(form1); //retorna ao form1
		}
		else if (c == cmVotar) {
			votoPrefeito = cgPrefeito.getString(cgPrefeito.getSelectedIndex()).replace(' ', '+');
			votoVereador = tf.getString().replace(' ', '+');
			siPrefeito = new StringItem("Prefeito: ", votoPrefeito);
			siVereador = new StringItem("Vereador: ", votoVereador);
			form3.append(siPrefeito);
			form3.append(siVereador);
			display.setCurrent(form3);
		}
	}

	else if (s == form3) {
		if (c == cmRetornar) {
			//APAGAR O CONTEUDO DAS STRING_ITENS
			display.setCurrent(form2);
		}
		else if (c == cmConfirmar) {
			enviaVoto();
		}
		else if (c == cmSair) {
			destroyApp(true);
			notifyDestroyed();
		}
	}
}

}[/code]

ahh, e testei no emulador do Wireless Toolkit