网站建设资讯

NEWS

网站建设资讯

Android实现图片查看器代码

Android实现图片查看器代码如下:

为嘉禾等地区用户提供了全套网页设计制作服务,及嘉禾网站建设行业解决方案。主营业务为成都网站制作、成都网站建设、嘉禾网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

public class MainActivity extends Activity implements OnClickListener{

    private EditText et_url;

private button btn_show;

private ImageView iv_pic;

/**

* 成功获取数据

*/

private final int GET_DATA_SUCESS = 1;

private final int NETWORK_ERROR = 2;

private final int SERVER_ERROR = 3;

private Handler handler = new Handler(){

public void handleMessage(android.os.Message msg) {

switch (msg.what) {

case GET_DATA_SUCESS:

bitmap bm = (bitmap) msg.obj;

iv_pic.setImagebitmap(bm);

Toast.makeText(MainActivity.this, "从网络获取数据", Toast.LENGTH_SHORT).show();

break;

case NETWORK_ERROR:

Toast.makeText(MainActivity.this, "网络连接异常", Toast.LENGTH_SHORT).show();

break;

case SERVER_ERROR:

Toast.makeText(MainActivity.this, "服务器返回异常", Toast.LENGTH_SHORT).show();

break;

default:

break;

}

};

};

@Override

    protected void onCreate(bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

     

        et_url = (EditText) findViewbyId(R.id.et_url);

        btn_show = (button) findViewbyId(R.id.btn_show);

        iv_pic = (ImageView) findViewbyId(R.id.iv_pic);

        src="/upload/article1/tomcat1.png");

     

        btn_show.setOnClickListener(this);

    }

@Override

public void onClick(View v) {

//

final File file = new src="/upload/article1/");

if(file != null&&file.length()>0){

bitmap bm = bitmapFactory.decodeFile(file.getAbsolutepath());

iv_pic.setImagebitmap(bm);

Toast.makeText(this, "使用缓存", Toast.LENGTH_SHORT).show();

return;

}

new Thread(){

public void run() {

//①获取网址

String path = et_url.getText().toString().trim();

//②联网

try {

URL url = new URL(path);

HttpURLConnection connection = (HttpURLConnection) url.openConnection();

//设置请求方式

connection.setRequestMethod("GET");

//设置连接超时时间

connection.setConnectTimeout(10000);

int code = connection.getResponseCode();

if(code==200){

//获取流

InputStream inputStream = connection.getInputStream();

FileOutputStream fos = new FileOutputStream(file);

int len = -1;

byte buffer[] = new byte[1024];

while((len = inputStream.read(buffer))!=-1){

fos.write(buffer, 0, len);

}

fos.close();

inputStream.close();

//通过流创建一个bitmap对象

//bitmap bitmap = bitmapFactory.decodeStream(inputStream);

bitmap bitmap = bitmapFactory.decodeFile(file.getAbsolutepath());

//iv_pic.setim

//创建消息

Message msg = Message.obtain();

//通过消息携带bitmap在主线程中展示

msg.what = GET_DATA_SUCESS;

msg.obj = bitmap;

//通过handler发送消息给主线程

handler.sendMessage(msg);

}else{

Message msg = Message.obtain();

msg.what = SERVER_ERROR;

handler.sendMessage(msg);

}

} catch (Exception e) {

e.printStackTrace();

Message msg = Message.obtain();

msg.what = NETWORK_ERROR;

handler.sendMessage(msg);

}

//③获取图片

//展示图片

};

}.start();

}

 

}

以上代码包含了查看图片以及下载图片,而下面的java代码主要是查看图片,不是下载图片。

public class MainActivity extends AppCompatActivity {

    private EditText et_url;

    private button btn_show;

    private ImageView iv_pic;

    private final int GET_DATA_SUCESS = 1;

    private final int NETWORK_ERROR = 2;

    private final int SERVER_ERROR = 3;

    private Handler handler = new Handler(){

        @Override

        public void handleMessage(@NonNull Message msg) {

            switch (msg.what) {

                case GET_DATA_SUCESS:

                    bitmap bm = (bitmap) msg.obj;

                    iv_pic.setImagebitmap(bm);

                    Toast.makeText(MainActivity.this, "图片是", Toast.LENGTH_SHORT).show();

                    break;

                case NETWORK_ERROR:

                    Toast.makeText(MainActivity.this, "网址异常", Toast.LENGTH_SHORT).show();

                    break;

                case SERVER_ERROR:

                    Toast.makeText(MainActivity.this, "服务器错误", Toast.LENGTH_SHORT).show();

                    break;

                default:

                    break;

            }

        }

    };

    @Override

    protected void onCreate(bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

        et_url = (EditText) findViewbyId(R.id.et_url);

        btn_show = (button) findViewbyId(R.id.btn_show);

        iv_pic = (ImageView) findViewbyId(R.id.iv_pic);

        src="/upload/article1/index_banner4.jpg");

        btn_show.setOnClickListener(new MyonClicklistener());

    }

    private class MyonClicklistener implements View.OnClickListener {

        @Override

        public void onClick(View v){

            new Thread(){

              public void run(){

                  String path = et_url.getText().toString().trim();

                  URL url = null;

                  try {

                      url = new URL(path);

                      HttpURLConnection connection = (HttpURLConnection) url.openConnection();

                      connection.setRequestMethod("GET");

                      connection.setConnectTimeout(10000);

                      int code = connection.getResponseCode();

                      if(code==200){

                          InputStream inputStream = connection.getInputStream();

                          bitmap bitmap = bitmapFactory.decodeStream(inputStream);

                          Message msg = new Message();

                          msg.what = GET_DATA_SUCESS;

                          msg.obj=bitmap;

                          handler.sendMessage(msg);

                          //tv_code.setText(result);

                      }else{

                          Message msg = Message.obtain();

                          msg.what = SERVER_ERROR;

                          handler.sendMessage(msg);

                      }

                  } catch (Exception e) {

                      e.printStackTrace();

                      Message msg = Message.obtain();

                      msg.what = NETWORK_ERROR;

                      handler.sendMessage(msg);

                  }

              }

            }.start();

        }

    }

}


当前名称:Android实现图片查看器代码
本文地址:http://cdweb.net/article/scsgoh.html