RXjava网络获取图片数据的方法
本文实例为大家分享了RXjava网络获取图片数据的具体代码,供大家参考,具体内容如下
RXjava
//Anhighlightedblock image=findViewById(R.id.tu); Observable.create(newObservableOnSubscribe(){ @Override publicvoidsubscribe(ObservableEmitter e)throwsException{ e.onNext(getBitmap()); } }) //设置数据在子线程中遍历 .subscribeOn(Schedulers.io()) //设置图片在主线程中加载 .observeOn(AndroidSchedulers.mainThread()) .subscribe(newObserver (){ @Override publicvoidonSubscribe(Disposabled){ } @Override publicvoidonNext(Bitmapbitmap){ image.setImageBitmap(bitmap); } @Override publicvoidonError(Throwablee){ } @Override publicvoidonComplete(){ } }); image.setOnClickListener(newView.OnClickListener(){ @Override publicvoidonClick(Viewview){ Toast.makeText(MainActivity.this,"ee",Toast.LENGTH_SHORT).show(); } }); image.setOnClickListener(newView.OnClickListener(){ @Override publicvoidonClick(Viewview){ } });
网络获取数据
//Anhighlightedblock //获取网络数据 privateBitmapgetBitmap(){ Stringstr="https://b-ssl.duitang.com/uploads/blog/201406/16/20140616171020_TiEXR.thumb.700_0.jpeg"; try{ URLurl=newURL(str); HttpURLConnectionurlConnection=(HttpURLConnection)url.openConnection(); urlConnection.setRequestMethod("GET"); urlConnection.setConnectTimeout(2000); urlConnection.connect(); if(urlConnection.getResponseCode()==200){ returnBitmapFactory.decodeStream(urlConnection.getInputStream()); } }catch(MalformedURLExceptione){ e.printStackTrace(); }catch(IOExceptione){ e.printStackTrace(); } returnnull; }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。