Android进阶之路
来源:互联网 发布:java jdk 1.7 编辑:程序博客网 时间:2024/05/21 18:39
现在我们使用的可能已经不是ImageLoader了,而是Picasso与Glide或者fackbook的图片加载工具,因为只需一行代码!
上一篇带给大家的是Glide的简单使用和工具封装,包括也给大家讲解了俩者的区别,有兴趣的可以前去学习
http://blog.csdn.net/qq_20451879/article/details/68925267
那么本篇给大家带来的正如标题,就是picasso的使用了,请查看代码
添加依赖:
compile 'com.squareup.picasso:picasso:2.5.2'
MainActivity :
package com.example.picassodemo;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.View;import android.widget.ImageView;import android.widget.TextView;import com.squareup.picasso.Picasso;public class MainActivity extends AppCompatActivity { private TextView mTv; private ImageView mIv; private TextView mTv2; private ImageView mIV2; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initView(); initEvent(); } private void initView() { mTv = (TextView) findViewById(R.id.tv_btn1); mIv = (ImageView) findViewById(R.id.iv_one); mTv2 = (TextView) findViewById(R.id.tv_btn2); mIV2 = (ImageView) findViewById(R.id.iv_two); } private void initEvent() { final String url="http://cdn.duitang.com/uploads/item/201604/27/20160427004300_QfKwt.jpeg"; mTv.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Picasso.with(getApplicationContext()).load(url).into(mIv); } }); mTv2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { PicassoUtil.picassoPrimary(getApplication(),url,mIV2); } }); }}
MainActivity Xml:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" android:layout_width="match_parent" android:orientation="vertical" android:layout_height="match_parent" tools:context="com.example.picassodemo.MainActivity"> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center" android:padding="5dp" android:id="@+id/tv_btn1" android:text="加载" /> <ImageView android:layout_width="match_parent" android:layout_height="0dp" android:id="@+id/iv_one" android:layout_weight="1" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center" android:padding="5dp" android:id="@+id/tv_btn2" android:text="加载" /> <ImageView android:layout_width="match_parent" android:layout_height="0dp" android:id="@+id/iv_two" android:layout_weight="1" /></LinearLayout>
自封的Util,可直接拿到项目中使用(PicassoUtil)
PicassoUtil Code:
package com.example.picassodemo;import android.content.Context;import android.widget.ImageView;import com.squareup.picasso.Picasso;import java.io.File;public class PicassoUtil { //基础使用 - 网络加载 public static void picassoPrimary(Context context, String loadUrl, ImageView imageView) { Picasso.with(context).load(loadUrl).into(imageView); } //显错使用 - 网络加载 public static void picassoIntermediate(Context context, String loadUrl, int errorImageView, ImageView imageView) { Picasso.with(context).load(loadUrl).error(errorImageView).into(imageView); } //站位使用 - 网络加载 - 推荐 public static void picassoAdvanced(Context context, String loadUrl, int placeImageView, int errorImageView, ImageView imageView) { Picasso.with(context).load(loadUrl).placeholder(placeImageView).error(errorImageView).into(imageView); } //限制使用(可设置图片大小,圆角) - 网络加载 public static void picassoClip(Context context, String loadUrl, int width, int height, ImageView imageView) { Picasso.with(context).load(loadUrl).resize(width, height).centerCrop().into(imageView); } //资源加载 public static void picassoResource(Context context, int resource, ImageView imageView) { Picasso.with(context).load(resource).into(imageView); } //本地加载 public static void picassoFile(Context context, String file, ImageView imageView) { Picasso.with(context).load(new File(file)).into(imageView); } //Adapter取消已经在视野之外的ImageView- 此封装可能有误,建议不要使用此方法 public static void picassoCancel(Context context, String url,ImageView imageView){ /** * 在Adapter的getView中执行String url = getItem(position) * 之后获取url输入到第二个参数就可以 * */ Picasso.with(context).load(url).into(imageView); }}
0 0
- Android进阶之路
- android进阶之路
- Android 进阶之路
- Android 进阶之路
- Android进阶之路
- Android进阶之路
- Android进阶之路
- Android进阶之路
- Android进阶之路
- Android进阶之路
- Android进阶之路
- Android进阶之路
- Android进阶之路
- Android进阶之路
- Android进阶之路
- Android进阶之路
- Android进阶之路
- Android进阶之路
- HTML
- neutron的基本原理
- hdu4135
- Android中ListView常用的两种适配器ArrayAdapter和SimpleAdapter使用
- 泛型中? super T和? extends T的区别
- Android进阶之路
- 使用Chrome调试web app
- ACM-动态规划14-怪盗基德的滑翔翼
- 正则表达式的简单介绍
- LeetCode-algorithms 39. Combination Sum
- 多线程循环打印
- solr6.4.2配置IK分词器
- Neutron网络入门
- java ee