Я загружаю изображения в свой список из пользовательского adpater, используя picasso. Активность останавливается при запуске кода, добавляя пикассо к адаптеру. Ниже мой код.Picasso не загружает изображения с url с помощью пользовательского адаптера
ListActivity:
protected void onPostExecute(String file_url) {
// dismiss the dialog after getting all products
pDialog.dismiss();
// updating UI from Background Thread
runOnUiThread(new Runnable() {
public void run() {
/**
* Updating parsed JSON data into ListView
* */
// updating listview
// setListAdapter(adapter);
ListView list1 = (ListView)findViewById(android.R.id.list);
CustomAdapter cus = new CustomAdapter(AllProductsActivity.this, productsList);
list1.setAdapter(cus);
}
});
}
Пользовательские Adpater:
public class CustomAdapter extends BaseAdapter {
private Context context;
LayoutInflater mInlfater;
ArrayList<HashMap<String,String>> productsList;
// Constructor
public CustomAdapter(Context context,ArrayList<HashMap<String,String>> productsList)
{
mInlfater = LayoutInflater.from(context);
this.productsList =productsList;
}
//public ImageAdapter(MainActivity mainActivity, string[] items){
//}
@Override
public int getCount() {
return productsList.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
ViewHolder holder;
if(convertView ==null)
{
convertView = mInlfater.inflate(R.layout.list_item,parent, false);
holder = new ViewHolder();
holder.img1 = (TextView)convertView.findViewById(R.id.img);
holder.nm1 = (TextView)convertView.findViewById(R.id.name);
holder.imageView = (ImageView)convertView.findViewById(R.id.prod_image);
convertView.setTag(holder);
}
else
{
holder =(ViewHolder) convertView.getTag();
}
HashMap<String,String> map = productsList.get(position);
Picasso.with(this.context).load("http://i.imgur.com/DvpvklR.png").into(holder.imageView);
holder.nm1.setText(map.get("name"));
return convertView;
}
static class ViewHolder
{
ImageView imageView;
TextView img,img1,img2,nm1;
}
}
StackTrace:
12-25 10:14:57.730: D/AndroidRuntime(933): Shutting down VM
12-25 10:14:57.730: W/dalvikvm(933): threadid=1: thread exiting with uncaught exception (group=0x40a71930)
12-25 10:14:57.830: E/AndroidRuntime(933): FATAL EXCEPTION: main
12-25 10:14:57.830: E/AndroidRuntime(933): java.lang.IllegalArgumentException: Context must not be null.
12-25 10:14:57.830: E/AndroidRuntime(933): at com.squareup.picasso.Picasso$Builder.<init>(Picasso.java:635)
12-25 10:14:57.830: E/AndroidRuntime(933): at com.squareup.picasso.Picasso.with(Picasso.java:597)
12-25 10:14:57.830: E/AndroidRuntime(933): at com.esoftall.esoft.CustomAdapter.<init>(CustomAdapter.java:42)
12-25 10:14:57.830: E/AndroidRuntime(933): at com.esoftall.esoft.AllProductsActivity$LoadAllProducts$1.run(AllProductsActivity.java:234)
12-25 10:14:57.830: E/AndroidRuntime(933): at android.app.Activity.runOnUiThread(Activity.java:4644)
12-25 10:14:57.830: E/AndroidRuntime(933): at com.esoftall.esoft.AllProductsActivity$LoadAllProducts.onPostExecute(AllProductsActivity.java:222)
12-25 10:14:57.830: E/AndroidRuntime(933): at com.esoftall.esoft.AllProductsActivity$LoadAllProducts.onPostExecute(AllProductsActivity.java:1)
12-25 10:14:57.830: E/AndroidRuntime(933): at android.os.AsyncTask.finish(AsyncTask.java:631)
12-25 10:14:57.830: E/AndroidRuntime(933): at android.os.AsyncTask.access$600(AsyncTask.java:177)
12-25 10:14:57.830: E/AndroidRuntime(933): at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:644)
12-25 10:14:57.830: E/AndroidRuntime(933): at android.os.Handler.dispatchMessage(Handler.java:99)
12-25 10:14:57.830: E/AndroidRuntime(933): at android.os.Looper.loop(Looper.java:137)
12-25 10:14:57.830: E/AndroidRuntime(933): at android.app.ActivityThread.main(ActivityThread.java:5041)
12-25 10:14:57.830: E/AndroidRuntime(933): at java.lang.reflect.Method.invokeNative(Native Method)
12-25 10:14:57.830: E/AndroidRuntime(933): at java.lang.reflect.Method.invoke(Method.java:511)
12-25 10:14:57.830: E/AndroidRuntime(933): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
12-25 10:14:57.830: E/AndroidRuntime(933): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
12-25 10:14:57.830: E/AndroidRuntime(933): at dalvik.system.NativeStart.main(Native Method)
Спасибо за любую помощь!
"_Below мой code._" Я не вижу ничего. Рассказывая нам, какая ошибка/исключение может быть ... весьма полезна. – csmckelvey
Извините, я обновил код. – usd123