android图片浏览功能,怎么在Android应用中实现一个网页图片浏览功能
怎么在Android應用中實現一個網頁圖片瀏覽功能
發布時間:2020-12-05 17:28:31
來源:億速云
閱讀:80
作者:Leah
本篇文章給大家分享的是有關怎么在Android應用中實現一個網頁圖片瀏覽功能,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
基本功能:輸入圖片的url然后點擊按鈕加載出來圖片
activity_main.xml
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="cn.edu.bzu.imageview.MainActivity">
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/iv"
android:layout_weight="1000"
/>
android:id="@+id/et_path"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="請輸入圖片的路徑"
android:text="http://pic.58pic.com/58pic/16/62/63/97m58PICyWM_1024.jpg"
android:singleLine="true" />
android:text="瀏覽"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="click"/>
MainActivity:
package cn.edu.bzu.imageview;
import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.Toast;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
public class MainActivity extends Activity {
protected static final int CHANGE_UI = 1;
protected static final int ERROR = 2;
private EditText et_path;
private ImageView iv;
private Handler handler = new Handler() {
public void handleMessage(Message msg) {
if (msg.what == CHANGE_UI) {
Bitmap bitmap = (Bitmap) msg.obj;
iv.setImageBitmap(bitmap);
} else if (msg.what == ERROR) {
Toast.makeText(MainActivity.this, "顯示圖片錯誤",Toast.LENGTH_SHORT).show();
}
}
;
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et_path = (EditText) findViewById(R.id.et_path);
iv = (ImageView) findViewById(R.id.iv);
}
public void click(View view) {
final String path = et_path.getText().toString().trim();
if (TextUtils.isEmpty(path)) {
Toast.makeText(this, "圖片路徑不能為空", Toast.LENGTH_SHORT).show();
} else {
//子線程請求網絡,android4.0以后訪問網絡不能放在主線程中
new Thread() {
private HttpURLConnection conn;
private Bitmap bitmap;
public void run() {//連接服務器get請求,獲取圖片
//創建URL對象
try {
URL url = new URL(path);
conn = (HttpURLConnection) url.openConnection();//根據url發送http的請求
conn.setRequestMethod("GET");//設置請求的方式
conn.setConnectTimeout(5000);//設置超時時間
conn.setRequestProperty("User-Agent", "Mozilla/4.0(compatible;MSIE 6.0;Windows NT 5.1;" + "SV1;.NET4.0C;.NET4.0E;.NET CLR 2.0.50727;" + ".NET CLR 3.0.4506.2152;.NET CLR 3.5.30729;Shuame)");//設置瀏覽器的版本
int code = conn.getResponseCode();//得到服務器返回的響應碼
if (code == 200) {//請求成功后返回碼是200
InputStream is = conn.getInputStream();
bitmap = BitmapFactory.decodeStream(is);
Message msg = new Message();
msg.what = CHANGE_UI;
msg.obj = bitmap;
handler.sendMessage(msg);
} else {
Message msg = new Message();
msg.what = ERROR;
handler.sendMessage(msg);
}
} catch (java.io.IOException e) {
e.printStackTrace();
Message msg = new Message();
msg.what = ERROR;
handler.sendMessage(msg);
}
}
}.start();
}
}
以上就是怎么在Android應用中實現一個網頁圖片瀏覽功能,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
總結
以上是生活随笔為你收集整理的android图片浏览功能,怎么在Android应用中实现一个网页图片浏览功能的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: docker安装zookeeper_Do
- 下一篇: android monkey优化,Git