Java 从远程数据库的文件夹下载图像,并在GridView中打印它们
以下代码不会打印活动中从数据库下载的图像。 我不明白我错在哪里,没有崩溃 提前感谢那些帮助我的人 MainActivity.java: 公共类MainActivity扩展了活动{Java 从远程数据库的文件夹下载图像,并在GridView中打印它们,java,android,gridview,android-asynctask,Java,Android,Gridview,Android Asynctask,以下代码不会打印活动中从数据库下载的图像。 我不明白我错在哪里,没有崩溃 提前感谢那些帮助我的人 MainActivity.java: 公共类MainActivity扩展了活动{ //ImageAdapter imageAdapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.
//ImageAdapter imageAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.i("MainActivity", "dopo xml");
GridView grid = (GridView) findViewById(R.id.gridView);
//imageAdapter = new ImageAdapter(this);
final ArrayAdapter<DatiServer> adapter = new ImageAdapter(this);
grid.setAdapter(adapter);
Log.i("MainActivity", "connection");
new Connection(adapter).execute();
}
}
ImageAdapter.java
public class ImageAdapter extends ArrayAdapter<DatiServer>
public class DatiServer {
private String ImageUrl;
public String getImageUrl()
{
Log.i("DatiServer", "getImageUrl()");
Log.d("DatiServer", "valore getImageUrl " + ImageUrl );
return ImageUrl;
}
public String getTesto()
{
Log.i("DatiServer", "getImageUrl()");
Log.d("DatiServer", "valore getImageUrl " + ImageUrl );
return ImageUrl;
}
public void setImageUrl(String ImageUrl)
{
Log.i("DatiServer", "setImageUrl");
this.ImageUrl = ImageUrl;
Log.d("DatiServer", "valore setImageUrl " + ImageUrl );
}
public class ImageAdapter extends ArrayAdapter<DatiServer>
public ImageAdapter(Context context)
{
super(context, 0, new ArrayList<DatiServer>());
}
@Override
public View getView(int position, View convertView, ViewGroup parent)
{
Log.i ("ImageAdapter", "dentro getView()");
ImageView imageView = (ImageView) convertView;
if (imageView == null)
{
imageView = new ImageView(getContext());
Log.i ("ImageAdapter", "imageView(getContext()) " + imageView);
imageView.setLayoutParams(new GridView.LayoutParams(85, 85));
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
imageView.setPadding(8, 8, 8, 8);
//imageView.setGravity(Gravity.CENTER);
//imageView.setLines(1);
}
DatiServer datiserver = getItem(position);
imageView.setImageBitmap(downloadBitmap(datiserver.getImageUrl()));
//imageView.setImageResource(R.drawable.img1);
Log.i ("ImageAdapter", "imageView " + imageView);
return imageView;
}
private Bitmap downloadBitmap(String fileUrl)
{
Log.i ("ImageAdapter", "dentro downloadBitmap fileUrl " + fileUrl);
InputStream is = null;
try
{
HttpURLConnection conn = (HttpURLConnection) new URL(fileUrl).openConnection();
conn.connect();
is = conn.getInputStream();
return BitmapFactory.decodeStream(is);
}
catch (MalformedURLException e)
{
}
catch (IOException e)
{
}
finally
{
if (is != null)
try
{
is.close();
}
catch (IOException e)
{
}
}
return null;
}
11-28 14:04:42.134: I/MainActivity(896): dopo xml
11-28 14:04:42.144: I/MainActivity(896): connection
11-28 14:04:42.197: I/MainActivity(896): diInBackground
11-28 14:04:42.534: I/Choreographer(896): Skipped 172 frames! The application may be doing too much work on its main thread.
11-28 14:04:42.544: D/gralloc_goldfish(896): Emulator without GPU emulation det ected.
11-28 14:04:42.764: I/Choreographer(896): Skipped 141 frames! The application may be doing too much work on its main thread.
11-28 14:04:43.644: D/Connection(896): vaolori di response: org.apache.http.message.BasicHttpResponse@40d2d900
11-28 14:04:43.644: I/MainActivity(896): leggiDati
11-28 14:04:43.644: D/Log_tag(896): vaolori di dati: org.apache.http.message.BasicHttpResponse@40d2d900
11-28 14:04:43.684: I/Dopo inputStream(896): fine while leggi dati
11-28 14:04:43.684: I/Dopo inputStream(896): [{"immagine":"images\/img1.jpeg" }]
11-28 14:04:43.684: D/Connection(896): vaolori di dati dopo chiamata leggiDati:
11-28 14:04:43.684: D/Connection(896): [{"immagine":"images\/img1.jpeg"}]
11-28 14:04:43.684: D/Connection(896): vaolori di dati dopo try http:
11-28 14:04:43.684: D/Connection(896): [{"immagine":"images\/img1.jpeg"}]
11-28 14:04:43.684: I/Connection(896): Json
11-28 14:04:43.684: D/Connection(896): vaolori di dati che vanno dell'oggetto json:
11-28 14:04:43.684: D/Connection(896): [{"immagine":"images\/img1.jpeg"}]
11-28 14:04:43.684: I/Connection(896): JSONObject
11-28 14:04:43.704: D/Connection(896): vaolori jArray: [{"immagine":"images\/img1.jpeg"}]
11-28 14:04:43.714: D/Connection(896): jArray i 1
11-28 14:04:43.714: I/DatiServer(896): setImageUrl
11-28 14:04:43.724: D/DatiServer(896): valore setImageUrl images/img1.jpeg
11-28 14:04:43.724: I/Connection(896): onProgressUpdate
11-28 14:04:43.724: I/Connection(896): onProgressUpdate it.wss.prova.DatiServer@40d31e80
11-28 14:04:43.764: I/ImageAdapter(896): dentro getView()
11-28 14:04:43.774: I/ImageAdapter(896): imageView(getContext()) android.widget.ImageView{40d32768 V.ED.... ........ 0,0-0,0}
11-28 14:04:43.774: I/DatiServer(896): getImageUrl()
11-28 14:04:43.774: D/DatiServer(896): valore getImageUrl images/img1.jpeg
11-28 14:04:43.784: I/ImageAdapter(896): dentro downloadBitmap fileUrl images/img1.jpeg
11-28 14:04:43.794: I/ImageAdapter(896): imageView android.widget.ImageView{40d32768 V.ED.... ......I. 0,0-0,0}
11-28 14:04:43.814: I/ImageAdapter(896): dentro getView()
11-28 14:04:43.814: I/DatiServer(896): getImageUrl()
11-28 14:04:43.814: D/DatiServer(896): valore getImageUrl images/img1.jpeg
11-28 14:04:43.814: I/ImageAdapter(896): dentro downloadBitmap fileUrl images/img1.jpeg
11-28 14:04:43.824: I/ImageAdapter(896): imageView android.widget.ImageView{40d32768 V.ED.... ......I. 0,0-0,0}
11-28 14:33:37.945: D/dalvikvm(896): GC_CONCURRENT freed 134K, 10% free 2617K/2892K, paused 8ms+5ms, total 85ms