使用photoView完成照片查看器(网络图片)
2016-09-15 01:10
281 查看
上一篇文章已经讲解了本地图片如何完成photoView,其实写法就差了那么几行代码,为什么分开写博客,是因为想让大家更清晰的看到你们想要的知识。
今天就来一个网络请求图片的,这里网络请求我就不写原生代码了,直接上的picasso,如果你还是习惯使用universal image loader的,也不是不可。
直接代码了
package us.mifeng.guaju.photoview;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.ImageView;
import com.squareup.picasso.Picasso;
import java.io.IOException;
import java.io.InputStream;
import butterknife.ButterKnife;
import butterknife.InjectView;
import uk.co.senab.photoview.PhotoViewAttacher;
public class MainActivity extends AppCompatActivity {
@InjectView(R.id.iv)
ImageView iv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ButterKnife.inject(this);
PhotoViewAttacher attacher = new PhotoViewAttacher(iv);
Picasso.with(this).load("https://guaju.github.io/lyh.jpg").into(iv);
}
}
是不是代码很简洁
接下来布局代码:
就一个图片
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="us.mifeng.guaju.photoview.MainActivity">
<ImageView
android:id="@+id/iv"
android:layout_centerInParent="true"
android:layout_width="300dp"
android:layout_height="300dp"
/>
</RelativeLayout>
记得权限加上:联网权限
<uses-permission android:name="android.permission.INTERNET"></uses-permission>最后看一下我的build-gradle中的依赖
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.github.chrisbanes.photoview:library:1.2.3'
compile 'com.android.support:appcompat-v7:23.3.0'
compile 'com.jakewharton:butterknife:5.1.1'
compile 'com.squareup.picasso:picasso:2.3.2'
}
ok,大家有任何疑问可以留言哦
今天就来一个网络请求图片的,这里网络请求我就不写原生代码了,直接上的picasso,如果你还是习惯使用universal image loader的,也不是不可。
直接代码了
package us.mifeng.guaju.photoview;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.ImageView;
import com.squareup.picasso.Picasso;
import java.io.IOException;
import java.io.InputStream;
import butterknife.ButterKnife;
import butterknife.InjectView;
import uk.co.senab.photoview.PhotoViewAttacher;
public class MainActivity extends AppCompatActivity {
@InjectView(R.id.iv)
ImageView iv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ButterKnife.inject(this);
PhotoViewAttacher attacher = new PhotoViewAttacher(iv);
Picasso.with(this).load("https://guaju.github.io/lyh.jpg").into(iv);
}
}
是不是代码很简洁
接下来布局代码:
就一个图片
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="us.mifeng.guaju.photoview.MainActivity">
<ImageView
android:id="@+id/iv"
android:layout_centerInParent="true"
android:layout_width="300dp"
android:layout_height="300dp"
/>
</RelativeLayout>
记得权限加上:联网权限
<uses-permission android:name="android.permission.INTERNET"></uses-permission>最后看一下我的build-gradle中的依赖
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.github.chrisbanes.photoview:library:1.2.3'
compile 'com.android.support:appcompat-v7:23.3.0'
compile 'com.jakewharton:butterknife:5.1.1'
compile 'com.squareup.picasso:picasso:2.3.2'
}
ok,大家有任何疑问可以留言哦
相关文章推荐
- Android 使用ViewPager结合PhotoView开源组件实现网络图片在线浏览功能
- 使用photoView完成照片查看器(本地图片)
- Android 下载显示网络图片 实现直接使用类似setimage的方法来完成
- Android 使用ViewPager结合PhotoView开源组件实现网络图片在线浏览功能
- 使用Glide加载网络图片,使用photoView进行缩放
- ipad 使用UIImageView显示网络上的图片
- C++中使用CAtlHttpClient显示网络图片的方法,支持png,bmp,gif图片格式
- Android异步下载网络图片&android解析xml文件的方式&使用Adapter为ListView提供数据
- Android异步下载网络图片&android解析xml文件的方式&使用Adapter为ListView提供数据
- JavaScript判断远程图片是否存在,加载完成:onerror 属性- & jQuery实现(如果因为网络或图片的原因发生异常,则显示该图片)~
- JavaScript判断远程图片是否存在,加载完成:onerror 属性- & jQuery实现(如果因为网络或图片的原因发生异常,则显示该图片)~
- 使用Matrix进行图形变换来完成图片在屏幕上的全屏显示(屏幕自适应)
- Android中ListView使用- 网络图片的异步加载
- [Android] AsyncTask使用实例---加载网络图片
- 新浪微博(二十)使用ListView显示网络图片(SearchAdapter类)
- 使用UIImageView展现来自网络的图片
- iphone:使用NSURLConnection下载网络图片
- 使用http协议下载网络图片
- [原]网络上普遍使用的图片预加载技术(一)
- Windows下使用winsock2与完成端口(IOCP)编写高伸缩性的网络服务器