獲取本地圖片代碼

package com.example.mybuttontest;

import java.io.FileNotFoundException;

import android.app.Activity;
import android.content.ContentResolver;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.net.Uri;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;

public class MainActivity extends Activity {
    static final int REQUEST_GET_PIC = 2;
    Bitmap mBmp=null;
    ImageView iv=null;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        iv = (ImageView)findViewById(R.id.myView);
        iv.setOnClickListener(new OnClickListener() {
            
            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent intent = new Intent(Intent.ACTION_GET_CONTENT,null);
                intent.setType("image/*");
                
                startActivityForResult(intent, REQUEST_GET_PIC);
            }
        });
        Button btn = (Button)findViewById(R.id.btn);
        btn.setOnClickListener(new OnClickListener() {
            
            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent intent = new Intent(Intent.ACTION_GET_CONTENT,null);
                intent.setType("image/*");
                
                startActivityForResult(intent, REQUEST_GET_PIC);
            }
        });
    }
    
    
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        // TODO Auto-generated method stub
        if(resultCode == RESULT_OK ){
            switch(requestCode){
               case REQUEST_GET_PIC:
                    Uri uri = data.getData();    
                    ContentResolver cr = getContentResolver();
                    try{
                        if(mBmp != null){
                            mBmp.recycle();
                        }
                        mBmp = BitmapFactory.decodeStream(cr.openInputStream(uri));
                    }catch(FileNotFoundException e){
                        e.printStackTrace();
                    }
                    
                    
                    iv.setImageBitmap(mBmp);
                    
                    break;
               default:
                     break;
                
            }
            resultCode = Activity.RESULT_OK;
        }else{
            resultCode = Activity.RESULT_CANCELED;
        }
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章