myq_26 2013-03-06 06:23 采纳率: 16.7%
浏览 3279

删除 Spinner 中指定的值

我想把数据从服务器解析到 spinner 中。现在我想从spinner中删除一些值。

JSONObject taxes = returnTaxlist.getJSONObject(TAG_TAXES);
        Object tax ;
        if (taxes.optJSONArray("tax") != null){
                //The result isn't null so it is a JSONArray
                tax = taxes.optJSONArray("tax");
                }
                else
                {
                //The result is null so it isn't a JSONArray
                tax = taxes.optJSONObject("tax");
                }
                if (tax instanceof JSONObject){
                // The object is a JSONObject
                    tax =  taxes.getJSONObject(TAG_TAX);
                }
                    else
                     {
                // The object is a JSONArray
                   tax = taxes.getJSONArray(TAG_TAX);
                    mytaxList = new ArrayList<TaxList>();
                    for(int i = 0; i <=((JSONArray)tax).length(); i++)
                         {
                        if(i==0){
                            TaxList iTaxClass = new TaxList();
                             iTaxClass.setTaxId("");
                             iTaxClass.setTaxName("--Select--");
                             iTaxClass.setTaxType("");
                             iTaxClass.setTaxvalue("");
                             mytaxList.add(iTaxClass);
                           continue;
                      }
                         JSONObject taxlist = ((JSONArray)tax).getJSONObject(i-1);
                          TaxList iTaxClass = new TaxList();

                               //***** Storing each JSON item in variable
                         iTaxClass.setTaxId(taxlist.getString(TAG_TAX_ID));
                         iTaxClass.setTaxName(taxlist.getString(TAG_TAX_NAME));
                         iTaxClass.setTaxType(taxlist.getString(TAG_TAX_TYPE));
                         iTaxClass.setTaxvalue(taxlist.getString(TAG_TAX_VALUE));

                         mytaxList.add(iTaxClass);
                      } 
                          tax1 = (Spinner)findViewById(R.id.item1);
                            tax1.setAdapter(new TaxListAdapter(mytaxList,this));

                            tax1.setOnItemSelectedListener(new Spinner.OnItemSelectedListener() {

                             public void onItemSelected(AdapterView<?> parent, View selectedItemView, int position, long id) 
                             {
                                    TaxListAdapter taxlistvalue = (TaxListAdapter)parent.getAdapter();
                                    taxlistvalue.getItemId(position);

                        }
                        public void onNothingSelected(AdapterView<?> arg0) {

                        }
                    });

taxList 中包含所有的值。现在我想检查 TaxType 是否删除了 spinner 中的 TaxName 和TaxValue 类型。事实上我不想在 spinner 中显示cound type tax。
我想从 ArrayList mytaxList 中把compound type tax 删除。 如何实现呢?

  • 写回答

1条回答 默认 最新

  • 问答小助手 2013-03-06 09:45
    关注

    在添加到 ArrayList 之前,检查 Custom tax 对象的条件,如果对象已经添加到 arraylist中,就不用再添加了。

    if( taxlist.getString(TAG_TAX_NAME).equals("Normal") mytaxList.add(iTaxClass);
        mytaxList.add(iTaxClass);   
    
    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器