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
Post a Comment