public String[] mArrayList = {" title", "sex", "name", "sex","fff","eee","iii"};
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
this,**mArrayList**,R.layout.sq,
android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
我想使用mArrayList数组向微调器添加值。但是ERROR显示如下。
类型中的方法createFromResource(Context,int,int) ArrayAdapter不适用于参数(sq,String [],int, INT)。
我做错了什么?
如何从另一个java类访问静态数组?
如果您有任何实例,那将是一个真正的帮助!
答案 0 :(得分:1)
虽然它不是示例的一部分,但似乎this
不是活动/上下文,但是您有一些内部类。它应该是这样的:
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
TheActivityName.this, mArrayList, R.layout.sq,android.R.layout.simple_spinner_item);
//^ Your activity name, to make it clear to the compiler that you want "this" object of the activity
答案 1 :(得分:1)
createFromResource需要来自values.xml文件的数组资源ID。
<resources>
<string-array name="mArrayList">
<item>title</item>
<item>sex</item>
<item>name</item>
<item>fff</item>
<item>eee</item>
<item>iii</item>
</string-array>
</resources>
并传递资源ID,即R.array.mArrayList
ArrayAdapter.createFromResource(this,R.array.mArrayList,android.R.layout.simple_spinner_item);
答案 2 :(得分:1)
ArrayAdapter.createFromResource()
的参数为
context
应用程序的环境。textArrayResId
要用作数据的数组的标识符
源。textViewResId
用于创建视图的布局标识符。然后我们如何传递更多参数。
我认为你想使用这个构造函数
创建ArrayAdapter ArrayAdapter(Context, int, int, T[])
并确保您的参数序列也是正确的构造函数。