Android Load Image From URL in Gallery Example
GalleryActivity.java
package com.android.gallery;
import android.app.Activity;
import android.app.ProgressDialog;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.SystemClock;
import android.view.View;
import android.widget.AdapterView;
import android.widget.Gallery;
import android.widget.Toast;
public class GalleryActivity extends Activity {
private Gallery gallery;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
gallery=(Gallery) findViewById(R.id.gallery1_denem);
gallery.setAdapter(new GalleryAdapter(this));
}
@Override
protected void onResume() {
super.onResume();
gallery.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView arg0, View arg1, int position,long arg3) {
Toast.makeText(getApplicationContext(), "Position: "+position+"", Toast.LENGTH_SHORT).show();
}
});
}
}
GalleryAdapter.java
package com.android.gallery;
import java.io.InputStream;
import java.net.URL;
import android.app.ProgressDialog;
import android.content.Context;
import android.database.DataSetObserver;
import android.graphics.drawable.Drawable;
import android.os.AsyncTask;
import android.os.SystemClock;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Gallery;
import android.widget.ImageView;
import android.widget.SpinnerAdapter;
public class GalleryAdapter extends BaseAdapter {
int galleryItem;
private Context context;
private GalleryConfig galleryConfig;
public GalleryAdapter(Context context) {
super();
this.context = context;
galleryConfig=new GalleryConfig();
}
@Override
public int getCount() {
return galleryConfig.getGallery_list().size();
}
@Override
public Object getItem(int position) {
return galleryConfig.getGallery_list().get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ImageView imageView=new ImageView(context);
imageView.setImageDrawable(loadImageFromURL(galleryConfig.getGallery_list().get(position)));
imageView.setLayoutParams(new Gallery.LayoutParams(150,120));
imageView.setScaleType(ImageView.ScaleType.FIT_XY);
return imageView;
}
private Drawable loadImageFromURL(String url)
{
try
{
InputStream is = (InputStream) new URL(url).getContent();
Drawable d = Drawable.createFromStream(is, "src");
return d;
}catch (Exception e) {
System.out.println(e);
return null;
}
}
}
GalleryConfig.java
package com.android.gallery;
import java.util.ArrayList;
public class GalleryConfig {
private ArrayList gallery_list=new ArrayList();
public ArrayList getGallery_list() {
return gallery_list;
}
public void setGallery_list(ArrayList gallery_list) {
this.gallery_list = gallery_list;
}
public GalleryConfig()
{
gallery_list.add("http://www.ethemsulan.com/wp-content/uploads/ara.png");
gallery_list.add("http://www.ethemsulan.com/wp-content/uploads/cikti5.png");
gallery_list.add("http://www.minare.net/wp-content/uploads/2011/01/android_ipod_touch_4.jpg");
gallery_list.add("http://blog.fommy.com/wp-content/uploads/2008/10/android-wallpaper1_1024x768.png");
gallery_list.add("http://www.buynetbookcomputer.com/android-netbook-images/android-netbook-big.jpg");
gallery_list.add("http://www.sharepointhoster.com/wp-content/uploads/2011/03/android_apps.jpeg");
gallery_list.add("http://www.ethemsulan.com/wp-content/uploads/customList.png");
gallery_list.add("http://www.ethemsulan.com/wp-content/uploads/handler.png");
gallery_list.add("http://www.ethemsulan.com/wp-content/uploads/xml.png");
gallery_list.add("http://www.ethemsulan.com/wp-content/uploads/progessbar.png");
}
}
main.xml
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
android:layout_height="wrap_content"
android:id="@+id/gallery1_denem"
android:layout_width="match_parent">
Etiketler :


