亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > Android > 正文

Android實現本地上傳圖片并設置為圓形頭像

2020-04-11 11:33:39
字體:
來源:轉載
供稿:網友

先從本地把圖片上傳到服務器,然后根據URL把頭像處理成圓形頭像。

因為上傳圖片用到bmob的平臺,所以要到bmob(http://www.bmob.cn)申請密鑰。

效果圖:

核心代碼:

復制代碼 代碼如下:

public class MainActivity extends Activity {
        private ImageView iv;
        private String appKey="";                //填寫你的Application ID
        private String path=Environment.getExternalStorageDirectory()+"/11.jpeg";        //要上傳的圖片的路徑
        public final int SIZE=2*1024;               
        protected void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                Bmob.initialize(this, appKey);                //初始化bmob SDK
                setContentView(R.layout.activity_main);
                initView();
        }
        private void initView() {
                // TODO Auto-generated method stub
                iv=(ImageView)findViewById(R.id.iv);
        }
        /**
         * 上傳文件到bmob后臺
         * */
        public void upload(View v){
                final BmobFile file=new BmobFile(new File(path));
                file.uploadblock(this, new UploadFileListener() {
                        @Override
                        public void onSuccess() {
                                // TODO Auto-generated method stub
                                Person p=new Person();
                                p.setUrl(file.getFileUrl(MainActivity.this));
                                p.save(MainActivity.this);
                                MyTask task=new MyTask();
                                task.execute(file.getFileUrl(MainActivity.this));
                                toast("上傳成功 ");
                        }
                        @Override
                        public void onFailure(int arg0, String arg1) {
                                // TODO Auto-generated method stub
                                toast("上傳失敗 "+arg1);
                                Log.i("---------", "------error "+arg1);
                        }
                });
        }
        /**
         * 根據URL獲取Bitmap
         * */
        public Bitmap getHttpBitmap(String url){
                Bitmap bitmap=null;
                URL myUrl;
                try {
                        myUrl=new URL(url);
                        HttpURLConnection conn=(HttpURLConnection)myUrl.openConnection();
                        conn.setConnectTimeout(5000);
                        conn.connect();
                        InputStream is=conn.getInputStream();
                        bitmap=BitmapFactory.decodeStream(is);
                        //把bitmap轉成圓形
                        bitmap=toRoundBitmap(bitmap);
                        is.close();
                } catch (MalformedURLException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                } catch (IOException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                }
                //返回圓形bitmap
                return bitmap;
        }
        /**
         * 把bitmap轉成圓形
         * */
        public Bitmap toRoundBitmap(Bitmap bitmap){
                int width=bitmap.getWidth();
                int height=bitmap.getHeight();
                int r=0;
                //取最短邊做邊長
                if(width<height){
                        r=width;
                }else{
                        r=height;
                }
                //構建一個bitmap
                Bitmap backgroundBm=Bitmap.createBitmap(width,height,Config.ARGB_8888);
                //new一個Canvas,在backgroundBmp上畫圖
                Canvas canvas=new Canvas(backgroundBm);
                Paint p=new Paint();
                //設置邊緣光滑,去掉鋸齒
                p.setAntiAlias(true);
                RectF rect=new RectF(0, 0, r, r);
                //通過制定的rect畫一個圓角矩形,當圓角X軸方向的半徑等于Y軸方向的半徑時, 
                //且都等于r/2時,畫出來的圓角矩形就是圓形
                canvas.drawRoundRect(rect, r/2, r/2, p);
                //設置當兩個圖形相交時的模式,SRC_IN為取SRC圖形相交的部分,多余的將被去掉
                p.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));
                //canvas將bitmap畫在backgroundBmp上
                canvas.drawBitmap(bitmap, null, rect, p);
                return backgroundBm;
        }
        class MyTask extends AsyncTask<String, String, Bitmap>{
 
                @Override
                protected Bitmap doInBackground(String... arg0) {
                        // TODO Auto-generated method stub
                        String url=arg0[0];
                        Bitmap bm=getHttpBitmap(url);
                        return bm;
                }
                @Override
                protected void onPostExecute(Bitmap result) {
                        // TODO Auto-generated method stub
                        iv.setImageBitmap(result);
                }
        }
        public void toast(String msg){
                Toast.makeText(this, msg, Toast.LENGTH_SHORT).show();
        }
}

以上所述就是本文的全部內容了,希望大家能喜歡。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91大神福利视频在线| 一区二区亚洲欧洲国产日韩| 欧美久久精品午夜青青大伊人| 欧美国产高跟鞋裸体秀xxxhd| 91精品国产九九九久久久亚洲| 日韩av不卡在线| 亚洲国产精品电影| 欧美韩国理论所午夜片917电影| 午夜精品三级视频福利| 黄色一区二区在线| 国产精品揄拍一区二区| 在线观看免费高清视频97| 亚洲第一精品久久忘忧草社区| 最近更新的2019中文字幕| 精品性高朝久久久久久久| 国产伦精品免费视频| 91色精品视频在线| 国产精品美女久久久久av超清| …久久精品99久久香蕉国产| 欧美激情欧美激情| 欧美中在线观看| 性亚洲最疯狂xxxx高清| 97超级碰在线看视频免费在线看| 欧美成人亚洲成人日韩成人| 在线精品91av| 日韩一区二区久久久| 国产精品一二三视频| 欧美一级黑人aaaaaaa做受| 国产精品日韩欧美综合| 国产一区二区黑人欧美xxxx| 久久久久久18| 欧美一区在线直播| 亚洲国产福利在线| 欧美中文字幕第一页| 日韩精品视频免费专区在线播放| 一本大道久久加勒比香蕉| 日韩欧美中文第一页| 亚洲伊人久久综合| 久久久精品视频在线观看| 亚洲成年人在线| 国产有码在线一区二区视频| 欧美有码在线视频| 国产日韩欧美另类| 久久久久国产精品免费| 国产精品视频大全| 国产中文欧美精品| 日韩最新av在线| 久久久久久成人| 久热精品在线视频| 欧美激情精品久久久久久蜜臀| 日韩精品极品在线观看| 国产精品电影一区| 伊人青青综合网站| 中文字幕亚洲无线码在线一区| 粗暴蹂躏中文一区二区三区| 日韩男女性生活视频| 日韩h在线观看| 国产精品爽爽爽| 91精品国产99久久久久久| 亚洲欧美日韩区| 欧美裸体xxxx极品少妇软件| 日韩中文字幕网| 亚洲欧美在线x视频| 91中文在线观看| 久久精品在线视频| 亚洲色图第一页| 亚洲精品国产精品久久清纯直播| 一区二区三区高清国产| 欧美超级乱淫片喷水| 国产精品99一区| 久久精品视频免费播放| 自拍偷拍亚洲一区| 欧美影院在线播放| 日韩在线www| 亚洲精品狠狠操| 久久久久www| 欧美午夜美女看片| 日韩va亚洲va欧洲va国产| 欧美日韩午夜激情| 亚洲精品久久久一区二区三区| 国产一区二区动漫| 久久久久久久久综合| 亚洲午夜性刺激影院| 亚洲精品白浆高清久久久久久| 亚洲成人中文字幕| 亚洲美女精品久久| 91成人免费观看网站| 97在线观看免费高清| 美女国内精品自产拍在线播放| 国产精品91在线观看| 亚洲tv在线观看| 亚洲在线免费看| 在线成人一区二区| 日韩av资源在线播放| 精品人伦一区二区三区蜜桃免费| 国产日韩欧美日韩| 国产精品视频在线观看| 欧美激情喷水视频| 中文字幕成人精品久久不卡| 5566日本婷婷色中文字幕97| 日韩av免费在线观看| 91精品视频大全| 欧美日本在线视频中文字字幕| 欧美视频二区36p| 在线视频欧美日韩| 亚洲激情第一页| 欧美日韩国产成人在线| 色综合久久久888| 日韩高清a**址| 国产精品视频久久久久| 成人黄色av网| 亚洲电影在线看| www日韩中文字幕在线看| 麻豆乱码国产一区二区三区| 欧美成人中文字幕| 96国产粉嫩美女| 自拍偷拍亚洲欧美| 美女视频久久黄| 一区二区欧美激情| 欧美一级视频免费在线观看| 亚洲国产精品久久精品怡红院| 久久影视电视剧凤归四时歌| 亚洲欧美成人网| 久久久久久久一区二区三区| 精品国产精品三级精品av网址| 欧美在线免费观看| 精品久久国产精品| 国产成人综合一区二区三区| 久久国产精品首页| 日韩视频免费观看| 欧美性极品xxxx娇小| 日韩精品在线视频| 久久99国产综合精品女同| 亚洲第一精品电影| 91老司机精品视频| 欧美大胆a视频| 一区二区三区黄色| 日韩精品www| 国产中文字幕91| 国产91精品青草社区| 亚洲激情电影中文字幕| 欧美性猛交xxxx乱大交3| 4438全国成人免费| 一本色道久久88综合日韩精品| 亚洲久久久久久久久久久| 亚洲欧美激情四射在线日| 精品亚洲国产视频| 亚洲精品99久久久久中文字幕| 欧美人与性动交a欧美精品| 精品久久久久久久久中文字幕| 亚洲第一免费播放区| 亚洲精品国产成人| 欧美—级a级欧美特级ar全黄| 久久精品国产91精品亚洲| 久久久中文字幕| 欧美精品videos| 最近2019中文字幕在线高清| 午夜欧美大片免费观看| 正在播放亚洲1区| 日韩美女在线观看| 国产精品入口尤物| 亚洲欧美三级伦理| 51精品国产黑色丝袜高跟鞋| 日韩美女av在线|