私はリサイクラービューANSカードビューでMySQLデータベースからのデータを表示しようとしているが、私は、このエラーメッセージが直面している:奇妙なNullPointException
のjava.lang.NullPointerException:インターフェイスメソッドを呼び出すための試みを 「INT java.util.List.size()」nullのオブジェクト参照の上
すべては私が私のループで(ログイン)で取得したデータを表示することができるよので、私は「とき正常に動作しているようです私のリストdata_listにデータを追加しようとしています。私のdata_listによって返された行の数を知ることができるので、すべてのことがOKです。
Log.e("number of lines return", String.valueOf(data_list.size()));
しかし、私は私のカスタム・アダプタのDATA_LISTに到達しようとしているとき:
@Override
public int getItemCount() {
return my_data.size();
}
それはヌルですので、私はmy_dataにアクセスすることができない私を警告します。
自分のデータベースからデータを取得する私のコードの一部:getItemCount実行中
private void load_data_from_server(final int id) {
//Log.e("iddddsss", String.valueOf(id));
AsyncTask<Integer,Void,Void> task =new AsyncTask<Integer, Void, Void>(){
@Override
protected Void doInBackground(Integer... integers) {
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://www.unhabitatrdcongo.org/Recycler-android-mySQL/index2.php?id="+id)
.build();
try {
Response response = client.newCall(request).execute();
JSONArray array = new JSONArray(response.body().string());
for (int i=0; i<array.length(); i++){
JSONObject object = array.getJSONObject(i);
Integer idd = object.getInt("id");
String des = object.getString("description").toString();
String im =object.getString("image").toString();
MyData data = new MyData(idd, des, im);
Log.e("errr", data.getDescription().toString());
data_list.add(data);
}
Log.e("number of lines read", String.valueOf(data_list.size()));
} catch (IOException e) {
e.printStackTrace();
Log.e("erreur IO EXCEPTION", e.toString());
} catch (JSONException e) {
System.out.print("End of content");
Log.e("erreur JSON",e.toString());
}
return null;
}
どこにでも 'my_data'を設定していますか?私はそれを見ることができません。そしてその場合、なぜそれがヌルであることをあなたに驚かせるでしょうか? –
もっとコードを表示する! – Xenolion