当前位置: 首页 > news >正文

400电话申请搜狗整站优化

400电话申请,搜狗整站优化,网易博客 wordpress,做考研政治真题的网站目录 一、Picasso介绍及其优势 二、Picasso的使用方法 1、添加依赖: 2、Picasso常用方法: 1、加载图像: 2、图像显示: 3、图像处理: 4、图像占位符和错误处理: 5、缓存控制: 6、清除缓…

目录

一、Picasso介绍及其优势

二、Picasso的使用方法

1、添加依赖:

2、Picasso常用方法:

1、加载图像:

 2、图像显示:

 3、图像处理:

4、图像占位符和错误处理:

5、缓存控制: 

6、清除缓存: 

调用Picasso库常用方法的示例:

1、加载图像并显示到ImageView:

 2、图像处理:

3、设置占位符和错误图像: 

4、缓存控制: 

 5、自定义图像转换器:

 三、Picasso使用例子

MainActivity : 

activity_main: 

 运行结果:

一、Picasso介绍及其优势

        Picasso是一个适用于Android的强大且易于使用的图片加载和显示库。它由Square开发,并提供了许多功能和选项,以帮助开发者更轻松地处理和展示图片。

以下是Picasso库的一些主要特点和优势:

1. 简单易用:Picasso提供了简洁而直观的API,使得加载和显示图片变得非常简单。只需几行代码就可以实现网络或本地图片的加载和显示。

2. 自动管理图片下载和缓存:Picasso会自动处理图片的下载和缓存,无需手动管理。它会根据需要自动加载和缓存图片,并在下次请求时从缓存中获取,以提高性能和节省数据使用量。

3. 强大的图片处理功能:Picasso支持各种常见的图片处理操作,如裁剪、旋转、缩放等,以满足不同的显示需求。可以根据ImageView的尺寸自动调整图片大小,并提供了灵活的接口来进行自定义的图片转换操作。

4. 错误处理和占位符:Picasso允许设置加载过程中的错误处理和占位符图片。当图片加载失败时,可以指定显示一个错误图片或者使用占位符图片代替,以提供更好的用户体验。

5. 请求优先级和标记:Picasso允许为每个图片请求设置优先级,并支持请求的取消和暂停。可以使用标记来管理和识别不同的图片请求,方便后续操作和处理。

6. 内存和磁盘缓存:Picasso会自动对已加载的图片进行内存和磁盘缓存,以提高性能并减少网络数据的消耗。它使用LRU (Least Recently Used) 算法来管理内存缓存,并使用磁盘缓存来避免重复下载图片。

7. 调试和日志记录:Picasso提供了调试功能和详细的日志记录,方便开发者在开发过程中定位和解决问题。可以开启调试标记显示图片加载来源,并打印详细的日志信息查看每个图片请求的状态和事件。

二、Picasso的使用方法

1、添加依赖:

implementation 'com.squareup.picasso:picasso:2.71828'

2、Picasso常用方法:

1、加载图像:

  • load(String path):从指定路径加载图像,可以是本地文件路径或网络URL。
  • load(File file):从文件加载图像。
  • load(Uri uri):从Uri加载图像。
  • load(int resourceId):从资源ID加载图像。

 2、图像显示:

  • into(ImageView imageView):将图像显示到指定的ImageView中。
  • into(Target target):将图像显示到自定义的Target对象中,可以用于处理图像的进一步操作。
  • into(BitmapTarget target):将图像显示到自定义的BitmapTarget对象中,可以获取Bitmap对象进行进一步处理。

 3、图像处理:

  • resize(int width, int height):调整图像大小。
  • centerCrop():居中裁剪图像以适应ImageView的尺寸。
  • fit():按比例缩放图像,使其完全适应ImageView的尺寸。
  • rotate(float degrees):旋转图像指定角度。
  • transform(Transformation transformation):应用自定义的图像转换器。

4、图像占位符和错误处理:

  • placeholder(int resourceId):在加载图像之前显示的占位符。
  • error(int resourceId):加载图像失败时显示的错误占位符。

5、缓存控制: 

  • memoryPolicy(MemoryPolicy memoryPolicy):设置内存缓存策略。
  • networkPolicy(NetworkPolicy networkPolicy):设置网络缓存策略。

6、清除缓存: 

  • invalidate(String path):使指定路径的图像缓存失效。
  • clearMemory():清除内存缓存。
  • clearDiskCache():清除磁盘缓存。

调用Picasso库常用方法的示例:

1、加载图像并显示到ImageView:

ImageView imageView = findViewById(R.id.imageView);
// 使用Picasso加载网络图片
String imageUrl = "https://img-home.csdnimg.cn/images/20201124032511.png";        Picasso.get().load(imageUrl).into(imageView);

 2、图像处理:

  • 调整图像大小:
Picasso.get().load(imageUrl).resize(200, 200).into(imageView);
  • 居中裁剪图像:
Picasso.get().load(imageUrl).centerCrop().into(imageView);
  • 旋转图像:
Picasso.get().load(imageUrl).rotate(90).into(imageView);

3、设置占位符和错误图像: 

Picasso.get().load(imageUrl).placeholder(R.drawable.placeholder_image).error(R.drawable.error_image).into(imageView);

4、缓存控制: 

  • 禁用内存缓存:
Picasso.get().load(imageUrl).memoryPolicy(MemoryPolicy.NO_CACHE).into(imageView);
  • 清除磁盘缓存:
Picasso.get().clearDiskCache();

 5、自定义图像转换器:

Transformation transformation = new Transformation() {@Overridepublic Bitmap transform(Bitmap source) {// 在此处对图像进行自定义转换return transformedBitmap;}@Overridepublic String key() {return "customTransformation";}
};Picasso.get().load(imageUrl).transform(transformation).into(imageView);

 三、Picasso使用例子

MainActivity : 

package com.example.picassodemo;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;import android.os.Bundle;
import android.provider.ContactsContract;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import androidx.appcompat.app.AppCompatActivity;
import com.squareup.picasso.Picasso;public class MainActivity extends AppCompatActivity {private ImageView imageView;private Button load,rotate;String imageUrl = "https://img-home.csdnimg.cn/images/20201124032511.png"; // 替换为实际的图片URL@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);// 获取ImageView控件的引用imageView = findViewById(R.id.image_view);load = findViewById(R.id.load);rotate =findViewById(R.id.rotate);rotate.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {Picasso.get().load(imageUrl).rotate(90).fit().into(imageView);}});load.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {// 使用Picasso加载网络图片Picasso.get().load(imageUrl).placeholder(R.drawable.img).error(R.drawable.ic_launcher_background).fit().into(imageView);}});}
}

activity_main: 

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context=".MainActivity"><ImageViewandroid:id="@+id/image_view"android:layout_width="200dp"android:layout_height="200dp"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintHorizontal_bias="0.498"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toTopOf="parent"app:layout_constraintVertical_bias="0.482"tools:srcCompat="@tools:sample/avatars" /><Buttonandroid:id="@+id/load"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="加载图片"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintHorizontal_bias="0.498"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toBottomOf="@+id/image_view"app:layout_constraintVertical_bias="0.193" /><Buttonandroid:id="@+id/rotate"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="旋转图片"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintHorizontal_bias="0.498"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toTopOf="parent"app:layout_constraintVertical_bias="0.796" /></androidx.constraintlayout.widget.ConstraintLayout>

 运行结果:

安卓图标库:iconfont-阿里巴巴矢量图标库

http://www.tj-hxxt.cn/news/45745.html

相关文章:

  • 学网站建设需要什么工具公司如何做网络推广营销
  • 电脑经销部开具网站建设费线上营销模式
  • 网站建设有限公司成都百度推广联系方式
  • 网站如何做排名小熊猫seo博客
  • 河南智慧团建网站登录seo关键词排名优化怎么样
  • 日照网站优化如何优化关键词
  • 做网站设计用什么软件网站底部友情链接代码
  • wordpress 查件西安关键词优化排名
  • greentree wordpress搜索引擎seo优化平台
  • 下载app赚钱的平台seo网络推广外包公司
  • wordpress个人网站模板网站营销
  • 苏州网站seo公司关键词提取工具app
  • 网站获取访问者qq朝阳区seo技术
  • 上海手机网站建设电话咨询seo代码优化有哪些方法
  • 网站建设最新技术google优化推广
  • 网站建设 seo优化株洲网站建设
  • 五里桥街道网站建设淘宝关键词工具
  • 公司网站维护怎么弄山东做网站公司
  • 面料出口做哪个网站好app拉新任务平台
  • wordpress上传类型限制乐陵seo外包公司
  • 手机网站 手机app郑州seo优化
  • 如何用asp编写网站后台营销关键词有哪些
  • 平台网站怎么做seoseo关键词教程
  • 有没有专门做数据分析的网站阜新网站seo
  • 平原县网站seo优化排名河南网站推广
  • illustrator 学习网站网站软件下载大全
  • 怎样建免费个人网站万能优化大师下载
  • 科技公司网站制作模板百度推广登录平台网址
  • 中国男女做网站网站推广沈阳
  • 南宁网站建设公司哪家专业文登seo排名