zoukankan      html  css  js  c++  java
  • Android spinner 动态添加时报错 java.lang.UnsupportedOperationException



    // spinner Adapter
    private ArrayAdapter<String>     spinnerAdapter   = null;
    private Spinner                  detailSpinner;
    private String[]   taskStatus = null;
    private List<String> statuses = null;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    this.setContentView(R.layout.spinner_notifydatachanged) ;
    taskStatus = new String[]{"a","b","c"} ;

    statuses = new ArrayList<String>() ;
    statuses.add("a") ;
    statuses.add("b") ;
    statuses.add("c") ;
    detailSpinner = (Spinner)this.findViewById(R.id.statusSel);
    spinnerAdapter =new ArrayAdapter<String>(this,
        android.R.layout.simple_spinner_item,statuses ) ;

    spinnerAdapter
        .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    detailSpinner.setAdapter(spinnerAdapter);
    Button button = (Button)this.findViewById(R.id.button1) ;
    button.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {
    taskStatus = null ;
    taskStatus= new String[]{"a","b","c","d"} ;
    //statuses.add("d") ;
    statuses = new ArrayList<String>() ;
    statuses.add("1") ;
    statuses.add("2") ;
    statuses.add("3") ;
    statuses.add("4") ;
    spinnerAdapter.notifyDataSetChanged() ;
    }
    }) ;

    }


    这样的结果:是Spinner 不会刷新的。spinnerAdapter.notifyDataSetChanged() ; 没有效果

    原因:@Override
    public void onClick(View v) {
    taskStatus = null ;
    taskStatus= new String[]{"a","b","c","d"} ;
    //statuses.add("d") ;
    statuses = new ArrayList<String>() ;
    statuses.add("1") ;
    statuses.add("2") ;
    statuses.add("3") ;
    statuses.add("4") ;
    spinnerAdapter.notifyDataSetChanged() ;
    }

    红色字体的那就是原因。  这里不能初始化。

  • 相关阅读:
    P2325 [SCOI2005]王室联邦
    P2709 小B的询问
    P4867 Gty的二逼妹子序列
    P4396 [AHOI2013]作业
    CF617E XOR and Favorite Number
    P4462 [CQOI2018]异或序列
    p4434 [COCI2017-2018#2] ​​Usmjeri
    LOJ 117 有源汇有上下界最小流
    P4137 Rmq Problem / mex
    LOJ 116 有源汇有上下界最大流
  • 原文地址:https://www.cnblogs.com/java20130722/p/3207332.html
Copyright © 2011-2022 走看看