java - Add item to final list -


i have final list of strings (it must final list inorder use in setonclicklistener) , when want add item list throws me "unsoppurtedoperationexception"

this logcat:

04-06 09:05:35.585: e/androidruntime(1179): fatal exception: main 04-06 09:05:35.585: e/androidruntime(1179): java.lang.unsupportedoperationexception 04-06 09:05:35.585: e/androidruntime(1179):     @ java.util.abstractlist.add(abstractlist.java:404) 04-06 09:05:35.585: e/androidruntime(1179):     @ java.util.abstractlist.add(abstractlist.java:425) 04-06 09:05:35.585: e/androidruntime(1179):     @ com.example.sale.groupactivity$mycustomadapter$1.onclick(groupactivity.java:385) 04-06 09:05:35.585: e/androidruntime(1179):     @ android.view.view.performclick(view.java:4204) 04-06 09:05:35.585: e/androidruntime(1179):     @ android.view.view$performclick.run(view.java:17355) 04-06 09:05:35.585: e/androidruntime(1179):     @ android.os.handler.handlecallback(handler.java:725) 04-06 09:05:35.585: e/androidruntime(1179):     @ android.os.handler.dispatchmessage(handler.java:92) 04-06 09:05:35.585: e/androidruntime(1179):     @ android.os.looper.loop(looper.java:137) 04-06 09:05:35.585: e/androidruntime(1179):     @ android.app.activitythread.main(activitythread.java:5041) 04-06 09:05:35.585: e/androidruntime(1179):     @ java.lang.reflect.method.invokenative(native method) 04-06 09:05:35.585: e/androidruntime(1179):     @ java.lang.reflect.method.invoke(method.java:511) 04-06 09:05:35.585: e/androidruntime(1179):     @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:793) 04-06 09:05:35.585: e/androidruntime(1179):     @ com.android.internal.os.zygoteinit.main(zygoteinit.java:560) 04-06 09:05:35.585: e/androidruntime(1179):     @ dalvik.system.nativestart.main(native method) 04-06 09:05:38.784: i/process(1179): sending signal. pid: 1179 sig: 9 04-06 09:05:39.694: e/trace(1425): error opening trace file: no such file or directory (2) 

and code:

          string name="a";            string freindsaccepted = groupfreindsacceptedinside.get(position);              final list<string> accepted = arrays.aslist(freindsaccepted.split(","));             final string[] arrayaccepted = accepted.toarray(new string[accepted.size()]);  acceptbtn.setonclicklistener(new view.onclicklistener() {               @override               public void onclick(view arg0) {                   thread thread = new thread()                   {                       @override                       public void run() {                            //perform                       }                   };                    thread.start();                    accepted.add(name);                   string[] arrayacceptedinside = accepted.toarray(new string[accepted.size()]);                      if(accepted.size()>1) {                         groupaccepted.settext("accepted: "+accepted.get(0)+","+ accepted.get(1)+"...see more");                     }                     else {                         groupaccepted.settext("accepted: "+accepted.get(0));                      }               }           }); 

where line 385 is:

          accepted.add(name); 

thanks alot

the problem isn't it's final variable - problem object return value of arrays.aslist:

final list<string> accepted = arrays.aslist(freindsaccepted.split(",")); 

from documentation of arrays.aslist (emphasis mine):

returns fixed-size list backed specified array. (changes returned list "write through" array.)

it sounds possibly want create new arraylist (which allow adding):

final list<string> accepted = new arraylist<string>(     arrays.aslist(freindsaccepted.split(",")); 

(it's not clear why you've got arrayaccepted , arrayacceptedinside variables, way - diagnostics?)


Comments

Popular posts from this blog

ios - iPhone/iPad different view orientations in different views , and apple approval process -

php - HTTP_REFERER woes: How can I allow access to a specific page, only when a visitor has visited another specific page beforehand? -

java Extracting Zip file -