そのため、onPostExecute メソッド中に listActivity を設定する際に問題が発生しました。SingleData の結果リストは正しいです...次に、カスタム アダプターを使用して android.R.id.list にバインドします...
しかし、それは私にエラーを与えます...そして私は本当に理由を理解していません...だからここにアダプターのコードがあります..:
private class RequestAdapter extends ArrayAdapter<SingleData> {
private int _resource;
private LayoutInflater _inflater;
private Context _context;
public RequestAdapter(Context context, int textViewResourceId,
List<SingleData> objects) {
super(context, textViewResourceId, objects);
_resource = textViewResourceId;
_context = context;
_inflater = LayoutInflater.from(_context);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
convertView = (ListView)_inflater.inflate(_resource,null);
SingleData sdd = getItem(position);
ImageView iv = (ImageView)convertView.findViewById(R.id.imagePlaceHolder_IV);
iv.setImageBitmap(sdd.thumbIMG);
TextView tv = (TextView)convertView.findViewById(R.id.createdAt_TV);
tv.setText(sdd.timeStamp);
// TODO Auto-generated method stub
return convertView;
}
}
onPostExecute は次のとおりです。
private class DownloadTheImages extends AsyncTask<Void, Void, List<SingleData>> {
private Context _ctx;
public DownloadTheImages(Context ctx) {
_ctx = ctx;
}
protected void onPostExecute(List<SingleData> result) {
ListView mainLV = (ListView)findViewById(android.R.id.list);
mainLV.setAdapter(new RequestAdapter(_ctx, R.layout.single_row, result));
}
protected List<SingleData> doInBackground(Void... params) {
.....
....
}
}
およびLOGCAT:
10-20 15:02:55.166: E/AndroidRuntime(761): FATAL EXCEPTION: main
10-20 15:02:55.166: E/AndroidRuntime(761): java.lang.NullPointerException
10-20 15:02:55.166: E/AndroidRuntime(761): at com.mimiedesign.dingle.PictureStreamViewer$DownloadTheImages.onPostExecute(PictureStreamViewer.java:103)
10-20 15:02:55.166: E/AndroidRuntime(761): at com.mimiedesign.dingle.PictureStreamViewer$DownloadTheImages.onPostExecute(PictureStreamViewer.java:1)
10-20 15:02:55.166: E/AndroidRuntime(761): at android.os.AsyncTask.finish(AsyncTask.java:417)
10-20 15:02:55.166: E/AndroidRuntime(761): at android.os.AsyncTask.access$300(AsyncTask.java:127)
10-20 15:02:55.166: E/AndroidRuntime(761): at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:429)
手がかりはありますか?... ありがとう..
これらは新しいエラーです:
10-20 16:32:56.615: E/AndroidRuntime(1487): at android.widget.AbsListView.obtainView(AbsListView.java:1430)
10-20 16:32:56.615: E/AndroidRuntime(1487): at android.widget.ListView.makeAndAddView(ListView.java:1745)
10-20 16:32:56.615: E/AndroidRuntime(1487): at android.widget.ListView.fillDown(ListView.java:670)
10-20 16:32:56.615: E/AndroidRuntime(1487): at android.widget.ListView.fillFromTop(ListView.java:727)
10-20 16:32:56.615: E/AndroidRuntime(1487): at android.widget.ListView.layoutChildren(ListView.java:1598)
10-20 16:32:56.615: E/AndroidRuntime(1487): at android.widget.AbsListView.onLayout(AbsListView.java:1260)
10-20 16:32:56.615: E/AndroidRuntime(1487): at android.view.View.layout(View.java:7175)
10-20 16:32:56.615: E/AndroidRuntime(1487): at android.widget.FrameLayout.onLayout(FrameLayout.java:338)
10-20 16:32:56.615: E/AndroidRuntime(1487): at android.view.View.layout(View.java:7175)
10-20 16:32:56.615: E/AndroidRuntime(1487): at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1254)
10-20 16:32:56.615: E/AndroidRuntime(1487): at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1130)
10-20 16:32:56.615: E/AndroidRuntime(1487): at android.widget.LinearLayout.onLayout(LinearLayout.java:1047)
10-20 16:32:56.615: E/AndroidRuntime(1487): at android.view.View.layout(View.java:7175)
10-20 16:32:56.615: E/AndroidRuntime(1487): at android.widget.FrameLayout.onLayout(FrameLayout.java:338)
10-20 16:32:56.615: E/AndroidRuntime(1487): at android.view.View.layout(View.java:7175)
10-20 16:32:56.615: E/AndroidRuntime(1487): at android.view.ViewRoot.performTraversals(ViewRoot.java:1140)
10-20 16:32:56.615: E/AndroidRuntime(1487): at android.view.ViewRoot.handleMessage(ViewRoot.java:1859)