2016-03-22 6 views
1

私はパーズクラウドからイメージを呼び出し、ピカソを使用してグリッドビューホルダーにロードします。ここでnullオブジェクトリファレンスのParseFile.getUrl() '

はdoInbackGround

@Override 
     protected Void doInBackground(Void... Params) { 
      feedsarraylist = new ArrayList<ParseFeeds>(); 
      try { 
       ParseQuery<ParseObject> query = new ParseQuery<ParseObject>("AroundMe"); 
       query.orderByDescending("createdAt"); 
       //query.whereWithinKilometers() 
       ob = query.find(); 

       for (ParseObject feeds : ob) { 
        ParseFile thumb = (ParseFile) feeds.get("videoThumbs"); 
        //ParseFile video = (ParseFile) feeds.get("file"); 
        ParseFeeds map = new ParseFeeds(); 
        //map.setImage(thumb.getUrl()); 
        //Uri videoUri = Uri.parse(video.getUrl()); 
        map.setImage(thumb.getUrl()); 
        feedsarraylist.add(map); 
       } 

      } catch (ParseException e) { 
       Log.e("ParseException", "parse: " + e); 
      } 
      return null; 
     } 

ParseFeeds.class

public String getImage() { 
     return videoThumbs; 
    } 

    public void setImage(String videoThumbs) { 
     this.videoThumbs = videoThumbs; 
    } 

私はLogcatが

Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String com.parse.ParseFile.getUrl()' on a null object reference 
                       at com.teamtreehouse.ribbit.FeedsFragment$RemoteDataTask.doInBackground(FeedsFragment.java:67) 
                       at com.teamtreehouse.ribbit.FeedsFragment$RemoteDataTask.doInBackground(FeedsFragment.java:45) 
01の詳細を
Picasso.with(context).load(feedsarraylist.get(position).getImage()).into(holder.ThumbView); 

GridViewAdapter.class

にそれをロードする。これは、

答えて

0

ここでは、エラーの発生場所を指定しなかったので、ここで推測しています。 feedsvideoThumbs要素を持っていない場合は

ParseFile thumb = (ParseFile) feeds.get("videoThumbs"); 
map.setImage(thumb.getUrl()) 

thumbnull、したがって、あなたのエラーになります。 feeds要素の内容を確認してください。

+0

はいthumb.getUrl()でエラーが発生します – Savita

+0

私はparseクラスにvideoThumbs列を持っています。 – Savita

+0

これにはどんな解決策がありますか? – Savita

関連する問題