Android Load Image From URL in Gallery Example

Android ile verilen bir Image URLsini Gallerye eklemeye çalıştım. GridView örneğine bakabilirsiniz. Internet erişim izni vermeyi unutmayın.

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 :




0.00016713142395 | 3.5