将字符串添加到另一个类中的静态阵列列表中,导致了无支撑的exception



我的目标是创建一个可以从应用程序中的任何活动访问的arraylist,因此我使用static arraylist<>:

创建了一个类
public class CategoryArrayList {
    public static String id;
    public static List<String> category_spinner_user = new ArrayList<>();
public static void addCategory_spinner_user(String stringToBeAdded) {
        CategoryArrayList.category_spinner_user.add(stringToBeAdded);
    }

然后尝试通过活动通过调用将项目添加到其中:

public class TestActivity extends AppCompatActivity {
        Button button;
        public void testClicked(View view){
            CategoryArrayList.category_spinner_user.add("AAA");
        }  
}

ฺ,但导致fatal_exception错误:

java.lang.illegalstateException:无法执行Android的方法:OnClick

引起的:java.lang.reflect.invocationTargetException

由:java.lang.unsupportedoperationException

捕获异常导致相同的错误报告:

w/system.err:java.lang.unsupportedoperationException在java.util.abstractlist.add(AbstractList.java:148(

更改arrayList&lt;&gt;linkedlist&lt;&gt;(正如为什么在尝试从列表中删除元素时,为什么我会得到一个无支持的poperedoperationException?(

如何解决此问题?

在下面尝试代码以进行布局和注意,以定义Android的函数名称:onClick相同的函数名称 testClicked(查看视图(

<Button
    android:onClick="testClicked"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:text="add"/>

建议使用安全解决方案进行查看单击使用单击侦听器:

View(your button).setOnClickListener(... ...);

某些品牌设备可能会崩溃以使用'android:onclick = ...'在视图布局中。

最新更新