我是新來的android編程我試圖從json文件加載圖像和文本我的文本視圖正在加載,但我的圖像不加載請幫助我。不能從json文件加載圖像到我的列表視圖
Customlistviewadapter
import java.util.List;
import com.squareup.picasso.Picasso;
import com.suni.sun.HomeGv;
import android.app.Activity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ImageView;
import android.widget.TextView;
public class CustomListViewAdapter extends ArrayAdapter<HomeGv> {
private Activity activity;
public CustomListViewAdapter(Activity activity, int resource,
List<HomeGv> img) {
super(activity, resource, img);
this.activity = activity;
// TODO Auto-generated constructor stub
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
ViewHolder holder = null;
LayoutInflater inflater = (LayoutInflater) activity.getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
if (convertView == null) {
convertView = inflater.inflate(R.layout.home_item, parent, false);
holder = new ViewHolder(convertView);
convertView.setTag(holder);
}else {
holder = (ViewHolder) convertView.getTag();
}
HomeGv thing = (HomeGv) getItem(position);
holder.title.setText(thing.getTitle());
holder.date_taken.setText(thing.getDate());
Picasso.with(activity).load(thing.getMedia()).into(holder.image);
return convertView;
}
private static class ViewHolder {
private TextView title,date_taken;
private ImageView image;
public ViewHolder(View v) {
title = (TextView) v.findViewById(R.id.grid_item_title);
date_taken = (TextView) v.findViewById(R.id.grid_item_date);
image = (ImageView) v.findViewById(R.id.grid_item_image);
}
}
}
ListViewActivity類
import java.util.ArrayList;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import com.suni.sun.JsonParse;
import com.suni.sun.HomeGv;
public class ListViewActivity extends Activity {
private ListView lv;
private ArrayList<HomeGv> img;
private ArrayAdapter<HomeGv> adap;
private final static String TAG = ListViewActivity.class.getSimpleName();
private final static String url = "http://saicloudica.cloudapp.net/json.txt";
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.home);
lv = (ListView) findViewById(R.id.listView);
setListViewAdapter();
getDataFromInternet();
}
private void getDataFromInternet(){
new JsonParse(this, url).execute();
}
private void setListViewAdapter(){
img = new ArrayList<HomeGv>();
adap = new CustomListViewAdapter(this, R.layout.home_item, img);
lv.setAdapter(adap);
}
public void parseJsonResponse(String result){
Log.i(TAG, result);
try{
JSONObject json = new JSONObject(result);
JSONArray jArray = new JSONArray(json.getString("items"));
for (int i = 0; i < jArray.length(); i++){
JSONObject jObj = jArray.getJSONObject(i);
HomeGv imgs = new HomeGv();
imgs.setTitle(jObj.getString("title"));
imgs.setDate(jObj.getString("date_taken"));
if(json.has("media"))
{
JSONObject media = jObj.getJSONObject("media");
String medi = media.getString("m");
if(medi != null)
{
imgs.setMedia(media.getString("m"));
}
}
img.add(imgs);
}
adap.notifyDataSetChanged();
} catch (JSONException e){
e.printStackTrace();
}
}
@Override
public void onBackPressed() {
// TODO Auto-generated method stub
finish();
}
}
首頁類
public class HomeGv {
private String title;
private String media;
private String date_taken;
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getMedia() {
return media;
}
public void setMedia(String media) {
this.media = media;
}
public String getDate() {
return date_taken;
}
public void setDate(String date_taken) {
this.date_taken = date_taken;
}
}
登錄:
10-13 12:39:33.835: I/ListViewActivity(5501): {"generator":"http:\/\/www.flickr.com\/","title":"Recent Uploads tagged soccer","items":[{"tags":"iris copyright sports soccer be quick epping voetbal 2015 1887 sportclub silvolde hoofdklasse","author":"[email protected] (SportclubSilvolde)","title":"IMG_9207","description":" <p><a href=\"http:\/\/www.flickr.com\/people\/sportclubsilvolde\/\">SportclubSilvolde<\/a> posted a photo:<\/p> <p><a href=\"http:\/\/www.flickr.com\/photos\/sportclubsilvolde\/21782884471\/\" title=\"IMG_9207\"><img src=\"http:\/\/farm1.staticflickr.com\/681\/21782884471_6834f2c9d8_m.jpg\" width=\"240\" height=\"160\" alt=\"IMG_9207\" \/><\/a><\/p> ","date_taken":"2015-09-27T15:00:50-08:00","link":"http:\/\/www.flickr.com\/photos\/sportclubsilvolde\/21782884471\/","author_id":"[email protected]","published":"2015-09-28T02:59:30Z","media":{"m":"http:\/\/farm1.staticflickr.com\/681\/21782884471_6834f2c9d8_m.jpg"}},{"tags":"iris copyright sports soccer be quick epping voetbal 2015 1887 sportclub silvolde hoofdklasse","author":"[email protected] (SportclubSilvolde)","title":"IMG_9484","description":" <p><a href=\"http:\/\/www.flickr.com\/people\/sportclubsilvolde\/\">SportclubSilvolde<\/a> posted a photo:<\/p> <p><a href=\"http:\/\/www.flickr.com\/photos\/sportclubsilvolde\/21747301246\/\" title=\"IMG_9484\"><img src=\"http:\/\/farm1.staticflickr.com\/736\/21747301246_f03bc953d6_m.jpg\" width=\"240\" height=\"160\" alt=\"IMG_9484\" \/><\/a><\/p> ","date_taken":"2015-09-27T15:58:43-08:00","link":"http:\/\/www.flickr.com\/photos\/sportclubsilvolde\/21747301246\/","author_id":"[email protected]","published":"2015-09-28T02:59:38Z","media":{"m":"http:\/\/farm1.staticflickr.com\/736\/21747301246_f03bc953d6_m.jpg"}},{"tags":"iris copyright sports soccer be quick epping voetbal 2015 1887 sportclub silvolde hoofdklasse","author":"[email protected] (SportclubSilvolde)","title":"IMG_9135","description":" <p><a href=\"http:\/\/www.flickr.com\/people\/sportclubsilvolde\/\">SportclubSilvolde<\/a> posted a photo:<\/p> <p><a href=\"http:\/\/www.flickr.com\/photos\/sportclubsilvolde\/21585600568\/\" title=\"IMG_9135\"><img src=\"http:\/\/farm1.staticflickr.com\/588\/21585600568_bce2bcd47a_m.jpg\" width=\"240\" height=\"160\" alt=\"IMG_9135\" \/><\/a><\/p> ","date_taken":"2015-09-27T14:53:53-08:00","link":"http:\/\/www.flickr.com\/photos\/sportclubsilvolde\/21585600568\/","author_id":"[email protected]","published":"2015-09-28T02:59:28Z","media":{"m":"http:\/\/farm1.staticflickr.com\/588\/21585600568_bce2bcd47a_m.jpg"}},{"tags":"iris copyright sports soccer be quick epping voetbal 2015 1887 sportclub silvolde hoofdklasse","author":"[email protected] (SportclubSilvolde)","title":"IMG_9062","description":" <p><a href=\"http:\/\/www.flickr.com\/people\/sportclubsilvolde\/\">SportclubSilvolde<\/a> posted a photo:<\/p> <p><a href=\"http:\/\/www.flickr.com\/photos\/sportclubsilvolde\/21761757502\/\" title=\"IMG_9062\"><img src=\"http:\/\/farm6.staticflickr.com\/5648\/21761757502_e18ee1b76f_m.jpg\" width=\"240\" height=\"160\" alt=\"IMG_9062\" \/><\/a><\/p> ","date_taken":"2015-09-27T14:48:06-08:00","link":"http:\/\/www.flickr.com\/photos\/sportclubsilvolde\/21761757502\/","author_id":"[email protected]","published":"2015-09-28T02:59:27Z","media":{"m":"http:\/\/farm6.staticflickr.com\/5648\/21761757502_e18ee1b76f_m.jpg"}},{"tags":"iris copyright sports soccer be quick epping voetbal 2015 1887 sportclub silvolde hoofdklasse","author":"[email protected] (SportclubSilvolde)","title":"IMG_9718","description":" <p><a href=\"http:\/\/www.flickr.com\/people\/sportclubsilvolde\/\">SportclubSilvolde<\/a> posted a photo:<\/p> <p><a href=\"http:\/\/www.flickr.com\/photos\/sportclubsilvolde\/21773428785\/\" title=\"IMG_9718\"><img src=\"http:\/\/farm6.staticflickr.com\/5798\/21773428785_256689c88f_m.jpg\" width=\"240\" height=\"160\" alt=\"IMG_9718\" \/><\/a><\/p> ","date_taken":"2015-09-27T16:27:04-08:00","link":"http:\/\/www.flickr.com\/photos\/sportclubsilvolde\/21773428785\/","author_id":"[email protected]","published":"2015-09-28T02:59:43Z","media":{"m":"http:\/\/f
10-13 12:39:34.425: I/JsonParse(5501): {"generator":"http:\/\/www.flickr.com\/","title":"Recent Uploads tagged soccer","items":[{"tags":"iris copyright sports soccer be quick epping voetbal 2015 1887 sportclub silvolde hoofdklasse","author":"[email protected] (SportclubSilvolde)","title":"IMG_9207","description":" <p><a href=\"http:\/\/www.flickr.com\/people\/sportclubsilvolde\/\">SportclubSilvolde<\/a> posted a photo:<\/p> <p><a href=\"http:\/\/www.flickr.com\/photos\/sportclubsilvolde\/21782884471\/\" title=\"IMG_9207\"><img src=\"http:\/\/farm1.staticflickr.com\/681\/21782884471_6834f2c9d8_m.jpg\" width=\"240\" height=\"160\" alt=\"IMG_9207\" \/><\/a><\/p> ","date_taken":"2015-09-27T15:00:50-08:00","link":"http:\/\/www.flickr.com\/photos\/sportclubsilvolde\/21782884471\/","author_id":"[email protected]","published":"2015-09-28T02:59:30Z","media":{"m":"http:\/\/farm1.staticflickr.com\/681\/21782884471_6834f2c9d8_m.jpg"}},{"tags":"iris copyright sports soccer be quick epping voetbal 2015 1887 sportclub silvolde hoofdklasse","author":"[email protected] (SportclubSilvolde)","title":"IMG_9484","description":" <p><a href=\"http:\/\/www.flickr.com\/people\/sportclubsilvolde\/\">SportclubSilvolde<\/a> posted a photo:<\/p> <p><a href=\"http:\/\/www.flickr.com\/photos\/sportclubsilvolde\/21747301246\/\" title=\"IMG_9484\"><img src=\"http:\/\/farm1.staticflickr.com\/736\/21747301246_f03bc953d6_m.jpg\" width=\"240\" height=\"160\" alt=\"IMG_9484\" \/><\/a><\/p> ","date_taken":"2015-09-27T15:58:43-08:00","link":"http:\/\/www.flickr.com\/photos\/sportclubsilvolde\/21747301246\/","author_id":"[email protected]","published":"2015-09-28T02:59:38Z","media":{"m":"http:\/\/farm1.staticflickr.com\/736\/21747301246_f03bc953d6_m.jpg"}},{"tags":"iris copyright sports soccer be quick epping voetbal 2015 1887 sportclub silvolde hoofdklasse","author":"[email protected] (SportclubSilvolde)","title":"IMG_9135","description":" <p><a href=\"http:\/\/www.flickr.com\/people\/sportclubsilvolde\/\">SportclubSilvolde<\/a> posted a photo:<\/p> <p><a href=\"http:\/\/www.flickr.com\/photos\/sportclubsilvolde\/21585600568\/\" title=\"IMG_9135\"><img src=\"http:\/\/farm1.staticflickr.com\/588\/21585600568_bce2bcd47a_m.jpg\" width=\"240\" height=\"160\" alt=\"IMG_9135\" \/><\/a><\/p> ","date_taken":"2015-09-27T14:53:53-08:00","link":"http:\/\/www.flickr.com\/photos\/sportclubsilvolde\/21585600568\/","author_id":"[email protected]","published":"2015-09-28T02:59:28Z","media":{"m":"http:\/\/farm1.staticflickr.com\/588\/21585600568_bce2bcd47a_m.jpg"}},{"tags":"iris copyright sports soccer be quick epping voetbal 2015 1887 sportclub silvolde hoofdklasse","author":"[email protected] (SportclubSilvolde)","title":"IMG_9062","description":" <p><a href=\"http:\/\/www.flickr.com\/people\/sportclubsilvolde\/\">SportclubSilvolde<\/a> posted a photo:<\/p> <p><a href=\"http:\/\/www.flickr.com\/photos\/sportclubsilvolde\/21761757502\/\" title=\"IMG_9062\"><img src=\"http:\/\/farm6.staticflickr.com\/5648\/21761757502_e18ee1b76f_m.jpg\" width=\"240\" height=\"160\" alt=\"IMG_9062\" \/><\/a><\/p> ","date_taken":"2015-09-27T14:48:06-08:00","link":"http:\/\/www.flickr.com\/photos\/sportclubsilvolde\/21761757502\/","author_id":"[email protected]","published":"2015-09-28T02:59:27Z","media":{"m":"http:\/\/farm6.staticflickr.com\/5648\/21761757502_e18ee1b76f_m.jpg"}},{"tags":"iris copyright sports soccer be quick epping voetbal 2015 1887 sportclub silvolde hoofdklasse","author":"[email protected] (SportclubSilvolde)","title":"IMG_9718","description":" <p><a href=\"http:\/\/www.flickr.com\/people\/sportclubsilvolde\/\">SportclubSilvolde<\/a> posted a photo:<\/p> <p><a href=\"http:\/\/www.flickr.com\/photos\/sportclubsilvolde\/21773428785\/\" title=\"IMG_9718\"><img src=\"http:\/\/farm6.staticflickr.com\/5798\/21773428785_256689c88f_m.jpg\" width=\"240\" height=\"160\" alt=\"IMG_9718\" \/><\/a><\/p> ","date_taken":"2015-09-27T16:27:04-08:00","link":"http:\/\/www.flickr.com\/photos\/sportclubsilvolde\/21773428785\/","author_id":"[email protected]","published":"2015-09-28T02:59:43Z","media":{"m":"http:\/\/farm6.st
10-13 12:39:34.425: I/Choreographer(5501): Skipped 77 frames! The application may be doing too much work on its main thread.
10-13 12:39:34.495: W/Settings(5501): Setting airplane_mode_on has moved from android.provider.Settings.System to android.provider.Settings.Global, returning read-only value.
您需要使用庫來顯示列表中的圖像。如着名的圖書館像畢加索或凌空或univeral圖像加載器 – Moudiz
@Moudiz請看代碼正確,他已經在使用畢加索 –
@Heamanth請發佈您的完整日誌,並檢查您的JSON語法[JSONLint](http://jsonlint.com/ ) –