Android - ListView中的微调器

时间:2011-01-11 10:34:55

标签: android listview spinner

我的ListView每行都有一个自定义Servizio对象。我正在使用SimpleAdapter,这没关系。

问题在于我无法在每个Servizio内填充微调器。 Servizio.java中的这段代码导致我的应用程序崩溃:

Spinner spinner = (Spinner) findViewById(R.id.spinner);

        int m = 3;//Integer.parseInt(camping.rulesList.getMaxPers().get(camping.tipSel));

        String[] array_spinner=new String[m];
        for (int indice = 0; indice < m; indice++)
        {
            if (indice == 0) array_spinner[indice] = String.format("%d persona", indice+1);
            else array_spinner[indice] = String.format("%d persone", indice+1);
        }

        ArrayAdapter<String> aa = new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_spinner_item, array_spinner);
        aa.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        spinner.setAdapter(aa);

相同的代码适用于主要活动的单个微调器...我缺少什么?

谢谢! ; - )

更新:这是日志...也许问题是“尝试使用非应用程序令牌WindowToken添加窗口”...

  

01-11 16:23:06.038:   WARN / dalvikvm(12582):threadid = 1:   线程退出与未捕获的异常   (组= 0x40028a00)01-11 16:23:06.038:   WARN / WindowManager(103):试图   添加带有非应用程序令牌的窗口   WindowToken {44ac0100 token = null}。   中止。 01-11 16:23:06.058:   (...)

1 个答案:

答案 0 :(得分:3)

好的问题是我使用的是getApplicationContext()而不是this。它直到我删除了全部getApplicationContext()之后才能正常工作。