1

我正在开发一个 Jade 多代理系统,它通过玉服务器在设备之间发送消息,一切正常,直到我需要添加一些 Spinner,我还通过接口从另一个类获取 ArrayList 对象。关于我做错了什么有什么想法吗?继承人的一些代码:

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.ventana_enviar_mensaje);

    Intent intent = getIntent();
    usuario = intent.getStringExtra("usuario");

    Button bt = (Button) findViewById(R.id.bt_enviar);
    bt.setOnClickListener(bt_enviar_pregunta_OnClick);

    bt = (Button) findViewById(R.id.bt_agregar);
    bt.setOnClickListener(bt_agregar_OnClick);

    //Register to interface class
    try{
        interfaz = MicroRuntime.getAgent(usuario).getO2AInterface(Interfaz.class);}
    catch (StaleProxyException e) {
        e.printStackTrace();
    } catch (ControllerException e) {
        e.printStackTrace();
    }

            //Put some values into spinners
    Spinner sp = (Spinner) findViewById(R.id.sp_categoria);

    adaptador = new ArrayAdapter<String>(this,0);
    adaptador.add("Cat1");
    adaptador.add("Cat2");
    adaptador.add("Cat3");
    adaptador.add("Cat4");
    sp.setAdapter(adaptador);
    adaptador.clear();

    sp = (Spinner) findViewById(R.id.sp_tipo);
    adaptador.add("Tipo1");
    adaptador.add("Tipo2");
    adaptador.add("Tipo3");
    adaptador.add("Tipo4");
    sp.setAdapter(adaptador);
    adaptador.clear();
    //Retrieve the list from another class
    ArrayList activos = new ArrayList();
    try {
        activos = interfaz.ObtenerActivos();
        sp = (Spinner) findViewById(R.id.sp_destinatarios);
        Iterator it = activos.iterator();
        while(it.hasNext())
        {
            adaptador.add(it.next().toString());
        }           
        sp.setAdapter(adaptador);
    } catch (FIPAException e) {
        e.printStackTrace();
    }
}
4

1 回答 1

2

刚刚换了:

adaptador = new ArrayAdapter<String>(this,0);

和:

adaptador = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_dropdown_item);

我的错

于 2012-10-18T03:50:05.053 回答