我是Android的新手,我在android列表视图和数组中工作。我有一些字符串数组
try{
String subString=colValue.text();
String[] strArray1=subString.split("//certain regex");
String[] strArray2=subString.split("//certain regex");
String[] strArray3=subString.split("//certain regex");
return strArray1;
}
我有像这样的列表视图
@Override
protected void onPostExecute(String[] result) {
ListView list=(ListView)findViewById(R.id.listShow);
ArrayAdapter<String> arrayAdapter=new ArrayAdapter<String>(getBaseContext(),android.R.layout.simple_list_item_1,result);
list.setAdapter(arrayAdapter);
mProgressDialog.dismiss();
}
我的listview.xml
<ListView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/listShow"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/btnData" />
我添加了列表视图。但我无法访问string array variable
try{
List<String> list = new ArrayList<String>(Arrays.asList(strArray1));
list.addAll(Arrays.asList(strArray2));
String [] outResult= (String[]) listString.toArray();
return outResult;
} catch (IOException e) {
e.printStackTrace();
}
如何将数组值绑定到单个列表视图中。帮助我解决此问题
答案 0 :(得分:1)
试试这个
try{
List<String> listString = new ArrayList<String>(Arrays.asList(resultArray));
listString.addAll(Arrays.asList(resultArray1));
String [] outResult= new String[listString.size()];
int i=0;
for(String str: listString){
outResult[i]=str;
i++;
}
return outResult;
} catch (Exception e) {
e.printStackTrace();
}
答案 1 :(得分:0)
如果我理解正确,您就拥有数组strArray1
,strArray2
和strArray3
,但只能弄清楚如何将其中一个传递给arrayAdapter
。这是对的吗?
如果是这种情况,也许你可以将数组相互附加,这样你只有一个数组 - 然后你可以传递给适配器?
或者,您可以将数组作为List
返回,并创建一个带有字符串列表的Adapter
?
try{
String subString = colValue.text();
List<String> entries = new List<String>();
entries.addAll(subString.split("//certain regex"));
entries.addAll(subString.split("//certain regex"));
entries.addAll(subString.split("//certain regex"));
return entries;
}
,
@Override
protected void onPostExecute(List<String> result) {
ListView list = (ListView) findViewById(R.id.listShow);
ListAdapter<String> listAdapter = new ListAdapter<String>(getBaseContext(), android.R.layout.simple_list_item_1, result);
list.setAdapter(listAdapter);
mProgressDialog.dismiss();
}