zoukankan      html  css  js  c++  java
  • 安卓开发之图片查看器

    package com.lidaochen.test;
    
    import android.graphics.Bitmap;
    import android.graphics.BitmapFactory;
    import android.os.Bundle;
    import android.os.Handler;
    import android.os.Message;
    import android.support.v7.app.AppCompatActivity;
    import android.view.View;
    import android.widget.EditText;
    import android.widget.ImageView;
    
    import java.io.InputStream;
    import java.net.HttpURLConnection;
    import java.net.URL;
    
    
    public class MainActivity extends AppCompatActivity {
        private EditText et_path;
        private ImageView iv_pic;
    
        // 创建handler对象
        public Handler handler = new Handler()
        {
            @Override
            public void handleMessage(Message msg) {
                super.handleMessage(msg);
                Bitmap bitmap = (Bitmap)msg.obj;
                // 设置图片到ImageView
                iv_pic.setImageBitmap(bitmap);
            }
        };
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            // 找到  ImageView 和 EditText控件
            et_path = (EditText)findViewById(R.id.et_path);
            iv_pic = (ImageView)findViewById(R.id.iv_pic);
        }
        public void click(View v)
        {
            new Thread()
            {
                public void run()
                {
                    try
                    {
                        // 获取图片路径
                        String path = et_path.getText().toString().trim();
                        // 创建url对象
                        URL url = new URL(path);
                        //  获取HttpURLConnection对象
                        HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
                        // 设置请求方式
                        httpURLConnection.setRequestMethod("GET");
                        // 设置超时时间
                        httpURLConnection.setReadTimeout(5000);
                        // 获取服务器返回的状态码
                        int code = httpURLConnection.getResponseCode();
                        if (code == 200)
                        {
                            // 获取图片数据,不管什么数据,都是以流的形式返回
                            InputStream in = httpURLConnection.getInputStream();
                            // 通过位图工厂,获取位图
                            final Bitmap bitmap = BitmapFactory.decodeStream(in);
                            // 创建MSG 对象
                            Message msg = new Message();
                            msg.obj = bitmap;
                            handler.sendMessage(msg);
                        }
                    }
                    catch (Exception e)
                    {
                        e.printStackTrace();
                    }
                }
            }.start();
        }
    }
  • 相关阅读:
    Python 模块 itertools
    Python 字符串的encode与decode
    python 模块 hashlib(提供多个不同的加密算法)
    暴力尝试安卓gesture.key
    hdu 1300 Pearls(DP)
    hdu 1232 畅通工程(并查集)
    hdu 1856 More is better(并查集)
    hdu 1198 Farm Irrigation(并查集)
    hdu 3635 Dragon Balls(并查集)
    hdu 3038 How Many Answers Are Wrong(并查集)
  • 原文地址:https://www.cnblogs.com/duxie/p/10946683.html
Copyright © 2011-2022 走看看