2016-05-04 12 views
0

私は、volleyを使用してURLから画像を取得しようとしていますが、機能していません データアプリの読み込み時にクラッシュします...しかし、imageloaderを削除すると evertythingが正しく読み込まれます。ここ Recyclerviewは画像をロードしていません

..

は私のアダプタクラス

public class RecyclerViewDataAdapter extends RecyclerView.Adapter<RecyclerViewDataAdapter.ViewHolder> { 
private Pants context; 
public ImageLoader mImageLoader; 

//List of superHeroes 
List<ListOfData> superHeroes; 

public RecyclerViewDataAdapter(List<ListOfData> superHeroes, Pants context){ 
    super(); 
    //Getting all the superheroes 
    this.superHeroes = superHeroes; 
    this.context = context; 
} 

@Override 
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { 
    View v = LayoutInflater.from(parent.getContext()) 
      .inflate(R.layout.recyclerview_row, parent, false); 
    ViewHolder viewHolder = new ViewHolder(v); 
    return viewHolder; 
} 

@Override 
public void onBindViewHolder(ViewHolder holder, int position) { 
    ListOfData superHero = superHeroes.get(position); 

    mImageLoader = MyApplication.getInstance(context).getImageLoader(); 
    mImageLoader.get(superHero.getImageUrl(), ImageLoader.getImageListener(holder.imageView1, R.mipmap.ic_launcher, android.R.drawable.ic_dialog_alert)); 

    holder.imageView1.setImageUrl(superHero.getImageUrl(), mImageLoader); 
    holder.textViewName1.setText(superHero.getName()); 
    //holder.textViewRank.setText(String.valueOf(superHero.getRank())); 
    //holder.textViewRealName.setText(superHero.getRealName()); 
    //holder.textViewCreatedBy.setText(superHero.getCreatedBy()); 
    //holder.textViewFirstAppearance.setText(superHero.getFirstAppearance()); 

    String powers = ""; 

    /* for(int i = 0; i<superHero.getPowers().size(); i++){ 
     powers+= superHero.getPowers().get(i); 
    }*/ 

    //holder.textViewPowers.setText(powers); 

} 

@Override 
public int getItemCount() { 
    return superHeroes.size(); 
} 

class ViewHolder extends RecyclerView.ViewHolder{ 
    public NetworkImageView imageView1; 
    public NetworkImageView imageView2; 
    public TextView textViewName1; 
    public TextView textViewName2; 
    public TextView textViewRank; 
    public TextView textViewRealName; 
    public TextView textViewCreatedBy; 
    public TextView textViewFirstAppearance; 
    public TextView textViewPowers; 

    public ViewHolder(View itemView) { 
     super(itemView); 
     imageView1 = (NetworkImageView) itemView.findViewById(R.id.thumbnail); 
     imageView2 = (NetworkImageView) itemView.findViewById(R.id.thumbnail2); 
     textViewName1 = (TextView) itemView.findViewById(R.id.category_title_one); 
     textViewName2 = (TextView) itemView.findViewById(R.id.category_title_two); 
     /* textViewRank= (TextView) itemView.findViewById(R.id.textViewRank); 
     textViewRealName= (TextView) itemView.findViewById(R.id.textViewRealName); 
     textViewCreatedBy= (TextView) itemView.findViewById(R.id.textViewCreatedBy); 
     textViewFirstAppearance= (TextView) itemView.findViewById(R.id.textViewFirstAppearance); 
     textViewPowers= (TextView) itemView.findViewById(R.id.textViewPowers); 
     */ 
    } 
} 

}

とJSONの一部である

ここ

}

Process: com.example.aninesoft.meltwishbeta, PID: 23012 
                       java.lang.NullPointerException 
                        at com.aninesoft.meltwishbeta.RecyclerViewDataAdapter.onBindViewHolder(RecyclerViewDataAdapter.java:45) 
                        at com.aninesoft.meltwishbeta.RecyclerViewDataAdapter.onBindViewHolder(RecyclerViewDataAdapter.java:19) 
                        at android.support.v7.widget.RecyclerView$Adapter.onBindViewHolder(RecyclerView.java:5277) 
                        at android.support.v7.widget.RecyclerView$Adapter.bindViewHolder(RecyclerView.java:5310) 
                        at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:4568) 
                        at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:4461) 
                        at android.support.v7.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:1962) 
                        at android.support.v7.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1371) 
                        at android.support.v7.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1334) 
                        at android.support.v7.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:563) 
                        at android.support.v7.widget.RecyclerView.dispatchLayout(RecyclerView.java:2847) 
                        at android.support.v7.widget.RecyclerView.onLayout(RecyclerView.java:3145) 
                        at android.view.View.layout(View.java:14832) 
                        at android.view.ViewGroup.layout(ViewGroup.java:4640) 
                        at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1671) 
                        at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1525) 
                        at android.widget.LinearLayout.onLayout(LinearLayout.java:1434) 
                        at android.view.View.layout(View.java:14832) 
                        at android.view.ViewGroup.layout(ViewGroup.java:4640) 
                        at android.support.v4.view.ViewPager.onLayout(ViewPager.java:1627) 
                        at android.view.View.layout(View.java:14832) 
                        at android.view.ViewGroup.layout(ViewGroup.java:4640) 
                        at android.support.design.widget.CoordinatorLayout.layoutChild(CoordinatorLayout.java:1034) 
                        at android.support.design.widget.CoordinatorLayout.onLayoutChild(CoordinatorLayout.java:744) 
                        at android.support.design.widget.ViewOffsetBehavior.onLayoutChild(ViewOffsetBehavior.java:42) 
                        at android.support.design.widget.AppBarLayout$ScrollingViewBehavior.onLayoutChild(AppBarLayout.java:1180) 
                        at android.support.design.widget.CoordinatorLayout.onLayout(CoordinatorLayout.java:757) 
                        at android.view.View.layout(View.java:14832) 
                        at android.view.ViewGroup.layout(ViewGroup.java:4640) 
                        at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453) 
                        at android.widget.FrameLayout.onLayout(FrameLayout.java:388) 
                        at android.view.View.layout(View.java:14832) 
                        at android.view.ViewGroup.layout(ViewGroup.java:4640) 
                        at android.support.v7.internal.widget.ActionBarOverlayLayout.onLayout(ActionBarOverlayLayout.java:437) 
                        at android.view.View.layout(View.java:14832) 
                        at android.view.ViewGroup.layout(ViewGroup.java:4640) 
                        at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453) 
                        at android.widget.FrameLayout.onLayout(FrameLayout.java:388) 
                        at android.view.View.layout(View.java:14832) 
                        at android.view.ViewGroup.layout(ViewGroup.java:4640) 
                        at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1671) 
                        at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1525) 
                        at android.widget.LinearLayout.onLayout(LinearLayout.java:1434) 
                        at android.view.View.layout(View.java:14832) 
                        at android.view.ViewGroup.layout(ViewGroup.java:4640) 
                        at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453) 
                        at android.widget.FrameLayout.onLayout(FrameLayout.java:388) 
                        at android.view.View.layout(View.java:14832) 
                        at android.view.ViewGroup.layout(ViewGroup.java:4640) 
                        at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:1996) 
                        at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1753) 
                        at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1004) 
                        at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5739) 
                        at android.view.Choreographer$CallbackRecord.run(Choreographer.java:761) 
                        at android.view.Choreographer.doCallbacks(Choreographer.java:574) 
                        at android.view.Choreographer.doFrame(Choreographer 
+0

これは、アダプタの45行目ですか? – varunkr

+0

これは です。mImageLoader = MyApplication.getInstance(context).getImageLoader(); –

+0

MyApplicationとは何ですか? – varunkr

答えて

0

を示しているエラーがgetImageLoader方法非静的

ImageLoader imageLoader = MyApplication.getInstance(context).getImageLoader() 
0

を作るであることは、それをダウンロードした前にイメージを示す試すことは可能ですか?

実際の画像がダウンロードされるまでダミー画像を読み込んでみてください。

関連する問題