我尝试在simple_list_item_1
中使用资源文件ArrayAdapter
,但显示错误
无法解析符号simple_list_item_1
然后我搜索并发现我需要使用android.R.layout.simple_list_item_1
,但它再次显示错误
无法解析构造函数' ArrayAdapter(android.support.v4.app.FragmentActivity,int,java.lang.String)'
这是我的代码
@Override
protected void onPostExecute(String lessonResponse) {
Log.d("my_test", lessonResponse);
try {
JSONObject lessonObject = new JSONObject(lessonResponse);
JSONArray lessonArray = lessonObject.getJSONArray("data");
for (int i = 0; i < lessonArray.length(); i++) {
JSONObject dataLessons = lessonArray.getJSONObject(i);
String jsonTitle = dataLessons.getString("lesson_title");
ArrayAdapter<String> adapterTitle = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, jsonTitle);
lessonList.setAdapter(adapterTitle);
Log.d("Lesson Title", " " + jsonTitle);
}
} catch (JSONException e) {
e.printStackTrace();
}
}
导入
import android.app.Activity;
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.net.Uri;
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
截图链接
请帮忙......谢谢..
答案 0 :(得分:2)
问题在于你的第三个参数,在创建适配器时。
第三个参数应该是要显示的项目的try
{
$success=$db->query("DELETE FROM tableName WHERE ID=1");
}
catch (Exception $e)
{
echo "You cannot delete this row";
}
或ArrayList
,而不是您的情况下的Array[]
( jsonTitle )。< / p>
并且不要将适配器设置为for循环。填写您的ArrayList或Array,然后设置适配器。
答案 1 :(得分:2)
它无法解析构造函数,因为您可能想要使用此构造函数:
ArrayAdapter(Context context, int resource, List<T> objects)
所以你需要一个对象数组而不是一个简单的字符串。试试这个:
ArrayList<String> list = new ArrayList<String>();
JSONArray jsonArray = (JSONArray) lessonArray.getJSONObject(i);
if (jsonArray != null) {
int len = jsonArray.length();
for (int i=0;i<len;i++){
list.add(jsonArray.get(i).toString());
}
}
ArrayAdapter<String> adapterTitle = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, list);
lessonList.setAdapter(adapterTitle);