当前位置:首页 » 安卓系统 » android显示网络图片

android显示网络图片

发布时间: 2023-09-02 10:04:50

Ⅰ 求:android 获取系统相册图片并显示在当前页面的代码

先初始化;

注意自定义 的

private final String IMAGE_TYPE = "image/*";private final int IMAGE_CODE = 0;


private void setImage() {
Intent getAlbum = new Intent(Intent.ACTION_GET_CONTENT); getAlbum.setType(IMAGE_TYPE); startActivityForResult(getAlbum, IMAGE_CODE);}
这里使用Intent获得相册图片数据,并返回原来界面;

这里说明一下

startActivityForResult(getAlbum, IMAGE_CODE);

补充{

startActivityForResult与startActivity的不同之处在于:
1、startActivity( )
仅仅是跳转到目标页面,若是想跳回当前页面,则必须再使用一次startActivity( )。
2、startActivityForResult( )
可以一次性完成这项任务,当程序执行到这段代码的时候,假若从T1Activity跳转到下一个Text2Activity,而当这个Text2Activity调用了finish()方法以后,程序会自动跳转回T1Activity,并调用前一个T1Activity中的onActivityResult( )方法。

}

startActivityForResult(getAlbum, IMAGE_CODE);

这里采用startActivityForResult来做跳转,此处的IMAGE_CODE实质是0为一个依据,可以写其他的值,但一定要>=0

然后重写onActivityResult用于接收刚刚得到的数据

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
Bitmap bm = null; ContentResolver resolver = getContentResolver(); if (requestCode == IMAGE_CODE) { try {
Uri originalUri = data.getData(); bm = MediaStore.Images.Media.getBitmap(resolver, originalUri); imgShow.setImageBitmap(bm); } catch (IOException e) {
e.printStackTrace(); }
}

补充{
ContentProvider-----数据提供给第三方应用程序使用时使用
因为在Android系统里面,数据库是私有的。一般情况下外部应用程序是没有权限读取其他应用程序的数据。如果你想公开你自己的数据,你有两个选择:你可以创建你自己的内容提供器(一个ContentProvider子类)或者你可以给已有的提供器添加数据-如果存在一个控制同样类型数据的内容提供器且你拥有写的权限
}
这里是创建一个新的内容提供器,然后在Activity当中通过getContentResolver()可以得到当前应用的 ContentResolver实例

if (requestCode == IMAGE_CODE) {
resultCode为回传的标记这句话是在确认是否回传的是你所需要的;如果是就执行try;不然就执行catch (IOException e) {
e.printStackTrace();}先说这里当try语句中出现异常是时,会执行catch中的语句,IOException e也就是实例化Exception类型的对象。e是此对象引用名称。然后e(引用)会自动调用Exception类中指定的方法,也就出现了e.printStackTrace() ;。printStackTrace()方法的意思是:在命令行打印异常信息在程序中出错的位置及原因。
try {
Uri originalUri = data.getData(); bm = MediaStore.Images.Media.getBitmap(resolver, originalUri); imgShow.setImageBitmap(bm);接收数据处理数据并显示照片。
然后进行测试。


另附源码
MainActivity:
package com.example.administrator.myapplication1;import android.graphics.BitmapFactory;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import java.io.IOException;import android.net.Uri;import android.os.Bundle;import android.provider.MediaStore;import android.app.Activity;import android.content.ContentResolver;import android.content.Intent;import android.graphics.Bitmap;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.ImageView;public class MainActivity extends AppCompatActivity { private final String IMAGE_TYPE = "image/*"; private final int IMAGE_CODE = 0; private Button choose=null; private ImageView imgShow; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); init();} private void init() { choose=(Button) findViewById(R.id.button1); imgShow=(ImageView) findViewById(R.id.imgShow); choose.setOnClickListener(listener); } private OnClickListener listener=new OnClickListener(){ @Override public void onClick(View v) {
setImage(); }

}; private void setImage() {
Intent getAlbum = new Intent(Intent.ACTION_GET_CONTENT); getAlbum.setType(IMAGE_TYPE); startActivityForResult(getAlbum, IMAGE_CODE); } protected void onActivityResult(int requestCode, int resultCode, Intent data) {
Bitmap bm = null; ContentResolver resolver = getContentResolver(); if (requestCode == IMAGE_CODE) { try {
Uri originalUri = data.getData(); bm = MediaStore.Images.Media.getBitmap(resolver, originalUri); imgShow.setImageBitmap(bm); } catch (IOException e) {
e.printStackTrace(); }
}
}
}


layout:activity_main.xml:

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="选择照相" android:layout_marginRight="190dp" android:layout_marginTop="8dp" android:paddingBottom="2dp" android:background="#aabbcc" /> <ImageView android:id="@+id/imgShow" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_margin="15dip" /></LinearLayout>

Ⅱ glide4.0以上在Android9.0以上加载图片不显示解决方案

楼主当时做项目的时候,用了glide加载网络图片,当时在Android9.0以下的手机都是显示正常的

在9.0以上发现只显示glide默认的图片 ,于是网络了,找到了答案。在这里记一下

解决方案很简单,在AndroidManifest.xml文件里, application字段里 加入  android:usesCleartextTraffic="true" 就可以了,图片就会正常显示

Ⅲ 怎样在java里用URL引入图片引入图片

URL对象中前而几个方法都非常容易理解,而该对象提供的openStream()可以读取该 URL资源的InputStream,通过该方法可以非常方便地读取远程资源。

下面的程序示范如何通过URL类读取远程资源:

1)只显示网络图片


1)只显示网络图片


引用图片处理的java类:

packagejun.king.urlgetimage;

importjava.io.InputStream;

importjava.net.URL;

importandroid.app.Activity;

importandroid.graphics.Bitmap;

importandroid.graphics.BitmapFactory;

importandroid.os.Bundle;

importandroid.os.Handler;

importandroid.os.Message;

importandroid.view.Menu;

importandroid.view.MenuItem;

importandroid.widget.ImageView;

{

Bitmapbitmap;

ImageViewimageview;

Handlerhandler=newHandler(){

@Override

publicvoidhandleMessage(Messagemsg){

if(msg.what==0x9527){

//显示从网上下载的图片

imageview.setImageBitmap(bitmap);

}

}

};

@Override

protectedvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

imageview=(ImageView)findViewById(R.id.imageView1);

//创建并启动一个新线程用于从网络上下载图片

newThread(){

@Override

publicvoidrun(){

try{

//创建一个url对象

URLurl=newURL("http://www..com/img/bdlogo.png");

//打开URL对应的资源输入流

InputStreamis=url.openStream();

//从InputStream流中解析出图片

bitmap=BitmapFactory.decodeStream(is);

//imageview.setImageBitmap(bitmap);

//发送消息,通知UI组件显示图片

handler.sendEmptyMessage(0x9527);

//关闭输入流

is.close();

}catch(Exceptione){

e.printStackTrace();

}

}

}.start();

}

@Override

(Menumenu){

//Inflatethemenu;.

getMenuInflater().inflate(R.menu.main,menu);

returntrue;

}

@Override

(MenuItemitem){

//Handleactionbaritemclickshere.Theactionbarwill

///Upbutton,solong

//.xml.

intid=item.getItemId();

if(id==R.id.action_settings){

returntrue;

}

returnsuper.onOptionsItemSelected(item);

}

}

Ⅳ android 中怎样把图片在html中显示

tml页面(命名:Android.html放在assets文件夹下):::::
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/>
<scriptlanguage="javascript"type="text/javascript">
functionget4Android(str){
document.getElementById("show").innerHTML="Thisisamessagefromandroid:"+str;
}
</script>
</head>
<body>
<divid="show"></div>
</body>
</html>

Text.java代码:::
importandroid.app.Activity;
importandroid.os.Bundle;
importandroid.os.Handler;
importandroid.os.Message;
importandroid.text.Editable;
importandroid.view.MotionEvent;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.view.View.OnTouchListener;
importandroid.webkit.WebSettings;
importandroid.webkit.WebView;
importandroid.webkit.WebViewClient;
importandroid.widget.Button;
importandroid.widget.EditText;
importandroid.widget.TextView;

{

privateButtonbutton;
privateTextViewtext;
privateWebViewweb;
privateEditTextedit;
privateHandlerhandler;

privatevoidinitView(){
button=(Button)this.findViewById(R.id.button2);
web=(WebView)this.findViewById(R.id.webView1);
edit=(EditText)this.findViewById(R.id.editText1);
button.setOnClickListener(this);
}

privatevoidsetWebView(){
web.setWebViewClient(newWebViewClient());
web.requestFocus();
WebSettingssetting=web.getSettings();
setting.setJavaScriptEnabled(true);
web.setOnTouchListener(newOnTouchListener(){

@Override
publicbooleanonTouch(Viewv,MotionEventevent){
web.requestFocus();
returnfalse;
}
});
web.addJavascriptInterface(newSendAndroid(),"theKey");
web.loadUrl("file:///android_asset/android.html");
}

@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
initView();
setWebView();

handler=newHandler(){
publicvoidhandleMessage(android.os.Messagemsg){
Stringstr=msg.obj.toString();
text.setText(str);
};
};
}

@Override
publicvoidonClick(Viewv){
Editableeditable=edit.getText();
web.loadUrl("javascript:get4Android(""+editable.toString()
+"")");
}

classSendAndroid{
(finalStringstr){
newThread(newRunnable(){
@Override
publicvoidrun(){
System.out.println("******"+str);
Messagemes=handler.obtainMessage();
mes.obj=str;
handler.sendMessage(mes);
}
}).start();

}
}
}

主要是:web.loadUrl("javascript:get4Android(""+editable.toString()+"")");中的“javascript:get4Android”要和html中的【functionget4Android(str){
document.getElementById("show").innerHTML="Thisisamessagefromandroid:"+str;
}】方法名相同

Ⅳ Android编程中怎么在屏幕上显示图片

<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/shu" />
说明几点:
1、项目中资源文件名称不要用中文,把“树”改成"shu"
2、启动一个模拟器或者先连接自己的手机,在DDMS查看,如果有设备说明连接成功了,这时就可以运行这个程序了。

Ⅵ 个人是做android使用Webview加载H5的时候,网络图片显示不出来,是空白的

是不是你的android工程的编译版本太低了,切换到4.4的试试看。我就遇到过这样的情况,有些webview的方法被禁止了,导致无法显示。

Ⅶ android从网络下载图片listview每次滑动的时候图片都会重新加载

要用缓存,推荐使用universal_image_loader第三方包 Universal Image Loader for Android的实现了异步的网络图片加载、缓存及显示,支持多线程异步加载。

Ⅷ android如何实现图片预览

eoe 里边有很多例子 http://www.eoeandroid.com/forum.php?mod=viewthread&tid=245578

热点内容
云服务器12位ip 发布:2025-02-01 20:00:07 浏览:470
脚本微信取关 发布:2025-02-01 19:35:01 浏览:152
如何用云服务器部署svn 发布:2025-02-01 19:33:20 浏览:990
缓存迅雷 发布:2025-02-01 19:31:53 浏览:978
linux与unixshell编程指南 发布:2025-02-01 19:25:03 浏览:939
护肤品数据库 发布:2025-02-01 19:25:02 浏览:648
python接受json数据 发布:2025-02-01 19:24:24 浏览:943
修改网站数据库 发布:2025-02-01 19:02:16 浏览:423
果粉不换安卓怎么办 发布:2025-02-01 18:57:21 浏览:796
网页卡需要什么配置 发布:2025-02-01 18:50:30 浏览:136