------

[ AD ] Port Monitor ( Try to use a Best WebSite Monitoring Tool )

------
package android.com.app;   
   
import java.util.ArrayList;   
   
import android.app.Activity;   
import android.content.ContentResolver;   
import android.content.Context;   
import android.content.Intent;   
import android.database.Cursor;   
import android.net.Uri;   
import android.os.Bundle;   
import android.provider.MediaStore;   
import android.provider.MediaStore.Images;   
import android.util.Log;   
import android.view.Menu;   
import android.view.MenuItem;   
   
import android.view.View;   
import android.view.ViewGroup;   
import android.widget.AdapterView;   
import android.widget.BaseAdapter;   
import android.widget.GridView;   
import android.widget.ImageView;   
import android.widget.TextView;   
import android.widget.AdapterView.OnItemClickListener;   
import android.widget.AdapterView.OnItemLongClickListener;   
   
import com.google.android.maps.GeoPoint;   
   
public class thumbviewer extends Activity {   
    /** Called when the activity is first created. */   
           
        private Context mContext;   
           
        @Override   
            public void onCreate(Bundle savedInstanceState) {   
                super.onCreate(savedInstanceState);   
                setContentView(R.layout.apicthumbsview);   
   
                GridView g = (GridView) findViewById(R.id.grid1);   
                final ImageAdapter ia = new ImageAdapter(this);   
                g.setAdapter(ia);   
                g.setOnItemClickListener(new OnItemClickListener() {   
                   
                public void onItemClick(AdapterView parent, View v, int position, long id) {   
                                ia.callImageViewer(position);   
                    }   
                });   
                   
                g.setOnItemLongClickListener(new OnItemLongClickListener() {   
                           
                        public boolean onItemLongClick(AdapterView parent, View v, 
int position, long id) { return ia.deleteSelected(position); } }); } protected void onPause() { super.onPause(); finish(); }

 public class ImageAdapter extends BaseAdapter {   
           
        private ArrayList imgList;   
            private ArrayList geoList;   
            private ArrayList titleList;   
            private ArrayList thumbsList;   
               
           
        public ImageAdapter(Context c) {   
            mContext = c;   
            imgList=new ArrayList();   
            geoList=new ArrayList();   
            titleList=new ArrayList();   
            thumbsList=new ArrayList();   
            getImageInfo(imgList,geoList,titleList,thumbsList);   
        }   
           
        public boolean deleteSelected(int sIndex){   
                   
                getContentResolver().delete(Uri.withAppendedPath(
MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI, ""+imgList.get(sIndex)), null, null); getContentResolver().delete(Uri.withAppendedPath(M
ediaStore.Images.Media.EXTERNAL_CONTENT_URI, ""+imgList.get(sIndex)), null, null); imgList.remove(sIndex); titleList.remove(sIndex); geoList.remove(sIndex); return true; } public final void callImageViewer(int selectedIndex){ TextView t = (TextView) findViewById(R.id.txt1); Intent i = new Intent(); i.setClass(mContext, imageviewer.class); t.setText("select"+img
List.get(selectedIndex)); i.putExtra("ImageData", imgList.get(selectedIndex)); //ID of the image i.putExtra("GeoPoint",
geoList.get(selectedIndex).getLatitudeE6()+","+geoList.get(selectedIndex).getLongitudeE6()); i.putExtra("Title", titleList.get(selectedIndex)); startActivityForResult(i,1); } public int getCount() { return imgList.size(); } public Object getItem(int position) { return position; } public long getItemId(int position) { return position; } public View getView(int position, View convertView, ViewGroup parent) { ImageView imageView; if (convertView == null) { imageView = new ImageView(mContext); imageView.setLayoutParams(new GridView.LayoutParams(85,85)); imageView.setAdjustViewBounds(false); imageView.setScaleType(ImageView.ScaleType.CENTER_CROP); imageView.setPadding(8, 8, 8, 8); } else { imageView = (ImageView) convertView; } TextView t = (TextView) findViewById(R.id.txt1); System.gc(); try{ Log.i("BMP","size"+imgList.size()); //Bitmap bmp = BitmapFactory.decodeFile(thumbsList.get(position)); imageView.setImageURI(Uri.withAppendedPath(
MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI, ""+imgList.get(position))); //imageView.setImageURI(Uri.parse(thumbsList.get(position))); //Log.i("THUMBNAILS DATA" ,Uri.withAppendedPath(
MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI, titleList.get(position)).toString()); System.gc(); //imageView.setImageBitmap(bmp); } catch(Exception e){ t.setText(e.getMessage()); } return imageView; }
/* Get all images from content provider in an array list*/ public void getImageInfo(ArrayList ThumbsIDList,ArrayList LocationList,ArrayList ThumbsDataList,ArrayList ThumbsList){ TextView t = (TextView) findViewById(R.id.txt1); String[] imageAttribs = new String[] { //Images.ImageColumns.TITLE, Images.Thumbnails._ID, //Images.ImageColumns.DISPLAY_NAME, //Images.ImageColumns.DATA, //Images.ImageColumns.LATITUDE, //Images.ImageColumns.LONGITUDE, Images.Thumbnails.DATA, Images.Thumbnails.IMAGE_ID, }; Cursor imageCursor= managedQuery( MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI, imageAttribs, null, null, // WHERE clause. null); if (imageCursor !=null && imageCursor.moveToFirst()) { String title; String thumbsID; String thumbsImageID; String thumbsData; String data; //int titleColumn = imageCursor.getColumnIndex(Images.ImageColumns.DATA); int thumbsIDcol = imageCursor.getColumnIndex(Images.Thumbnails._ID); //int LatCol = imageCursor.getColumnIndex(Images.ImageColumns.LATITUDE); //int LongCol = imageCursor.getColumnIndex(Images.ImageColumns.LONGITUDE); int thumbsDataCol = imageCursor.getColumnIndex(Images.Thumbnails.DATA); int thumbsImageIDCol = imageCursor.getColumnIndex(Images.Thumbnails.IMAGE_ID); int num=0; do { // Get the field values t.setText("d"+num); //title = imageCursor.getString(titleColumn); thumbsID = imageCursor.getString(thumbsIDcol); thumbsData = imageCursor.getString(thumbsDataCol); thumbsImageID = imageCursor.getString(thumbsImageIDCol); Log.i("BMP","size "+thumbsID+" "+thumbsData+" "+thumbsImageID); num++; if(thumbsImageID!= null) { ThumbsIDList.add(imageCursor.getString(thumbsIDcol)); ThumbsDataList.add(imageCursor.getString(thumbsDataCol)); } //TitleList.add(title); //t.setText(imageCursor.getDouble(LatCol)+","+imageCursor.getDouble(LongCol)); //Comment this for emu //LocationList.add(new GeoPoint((int)34.027412*1000000,(int)-118.289738*1000000)); //Comment this for device /*LocationList.add(new GeoPoint( (int)(imageCursor.getDouble(LatCol)*1000000), (int)(imageCursor.getDouble(LongCol)*1000000) ) ); */ //LocationList.add(new GeoPoint( // (int)(imageCursor.getDouble(LatCol)*1000000), // (int)(imageCursor.getDouble(LongCol)*1000000) // ) // ); } while (imageCursor.moveToNext()); } return; } }//class imageadapter protected void onDestroy() { super.onDestroy(); finish(); } }//class apicsthumbview>>>>>>> .r67

'0.일반개발' 카테고리의 다른 글

날짜 안드로이드 자바 일수 계산  (0) 2010.09.14
How to Display Thumbnails of Images  (0) 2010.09.14
OpenGL ES 1.0 on Android – Triangle Example  (2) 2010.09.14
팝업 윈도우  (1) 2010.09.14
Android 2.0 변경사항  (0) 2010.09.14

+ Recent posts