首页
学习
活动
专区
圈层
工具
发布

常用控件之ImageView的使用(一)

ZoomButton ImageView(图像视图),直接继承自View类,它的主要功能是用于显示图片,实际上它不仅仅可以用来显示图片,任何Drawable对象都可以使用 ImageView来显示。...adjustViewBounds:设置ImageView是否调整自己的边界来保持所显示图片的长宽比,需要结合 android:maxWidth、 android:maxHeight一起使用否则单独使用没有效果...对于 android:scaleType属性,因为关于图像在 ImageView中的显示效果,所以有如下属性值可以选择: matrix:使用 matrix方式进行缩放。...打开相册加载图片 看了上述的一个demo展示,可能有的小伙伴表示太麻烦了,难道我得找到每张图片的路径才可以去加载图片嘛?...而且一些小伙伴阔能使用的是自己的手机,相册都不知道在哪个文件夹下,没关系,接下来我们就教你如何从相册中选取照片并通过 ImageView进行加载!!

2.2K20

Android 10适配要点,作用域存储

为此,Android系统针对文件类型进行了分类,图片、音频、视频这三类文件将可以通过MediaStore API来进行访问,而其他类型的文件则需要使用系统的文件选择器来进行访问。...Demo效果: ? 这样我们就将获取相册中图片的方式掌握了,并且这种方式在所有的Android系统版本中都适用。 那么接下来,我们开始学习如何将一张图片添加到相册。...Demo效果: ? 好了,这样我们就将相册图片的读取和存储问题都解决了,下面我们来探讨另外一个常见的需求,如何将文件下载到Download目录。...至于Android 9及以下的系统版本,请你仍然使用之前的代码来进行文件下载。 Demo效果: ?...使用文件选择器 如果我们要读取SD卡上非图片、音频、视频类的文件,比如说打开一个PDF文件,这个时候就不能再使用MediaStore API了,而是要使用文件选择器。

2.7K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Android 垃圾分类APP(四)垃圾分类之图像输入

    图像输入 前言 正文 一、创建平台应用 二、新建图像识别页面 三、网络订阅 四、编写页面代码 五、识别网络图片 六、识别相册图片 七、识别拍照图片 八、垃圾分类 前言   在上一篇文章中完成了语音输入...图像识别还是有很多的SDK可以使用的,这里面我目前用过的就是百度的图像识别,感觉还是蛮好的,而且有我之前的文章做普遍,那么本文是属于APP功能编写,这与单独写介绍SDK使用的文章完全是两回事。...这里有三个关键的信息:AppID、API Key、Secret Key,这三个值在后面会用到,请使用自己创建应用时生成的值。...这里的值是我在百度开放平台上注册应用时生成的,请替换为自己的。...,通过localImageDiscern方法将这个路径去转字节,再转base64。

    1.6K20

    iOS 中的CIFilter(基础用法)

    文中有提到在iOS 8 上,CIFilter 的API 里有126种滤镜可用,在 同时期 Mac OS 上有160多种滤镜可用;而在iOS 9.3 上,我测试可以使用的滤镜已经达到174种,Mac OS...如何知道有哪些滤镜效果呢? 我一度想查找API里一共提供了多少种滤镜,每种滤镜分别有什么效果。...基础用法 对一张图使用一个滤镜效果,总结起来需要四步: 创建一个CIImage对象 .CImage 有很多初始化方法。...UIImage // 其实在这个API内部用到了CIContext,而它就是在每次使用的使用去创建一个新的CIContext,比较影响性能 let newImage = UIImage(CIImage...imageWithCIImage:outputImage]; // 如果需要将image转NSData保存,则得用下面的方式先转换为CGImage,否则NSData 会为nil

    2.5K30

    Android 百度图像识别(详细步骤+源码)(下)

    对于这个Token,是有有效期的,基本上是一个月,所以你可以不用每次使用时都重新请求这个接口去获取Token,这里可以用缓存来解决这个问题。..." tools:context=".MainActivity"> ImageView android:id="@+id/iv_picture" android...七、相册图片识别 在实际应用中,更多是采用本地的图片进行识别,通常是选择拍照的图片或者打开相册获取图片,先来看看通过相册获取图片进行图像识别。要实现这个功能首先要改一下接口,加一个image参数。...[在这里插入图片描述] 接口的相关方法都改好了,下面来写打开相册的方法。Android6.0以后读写文件都属于危险权限,因此需要动态请求。...Uri,然后通过Uri得到图片的路径,然后通过这个路径将图片转成字节,再转Base64,首先来看localImageDiscern方法。

    1.7K40

    【Android】图片处理

    √ 按原图比例缩放,确保图片宽高均不超过 ImageView 尺寸,缩放后居中显示 ✅ 保持 ❌ 不裁剪 ✅ 可能留白 完整显示图片,无变形,但容器与图片宽高比不同时会留空白 centerCrop √...对象 ②上下文工具类把图片转化为Drawable对象 ③把Drawable对象设置给ImageVIew (3)效果 (4)ContextCompat.getDrawable 上下文工具类中的静态方法,获取...需手动编写代码处理不同状态下的图像切换。 动态修改 可在运行时修改属性(颜色、透明度、形状等),无需重建对象。 修改像素需重新创建 Bitmap 或使用 Canvas 绘制,操作复杂。...典型应用场景 图标、背景、状态按钮、动画效果、矢量图形。 相机拍照、图像处理、游戏贴图、复杂图像。 5:总结 上面的表格,看着就头大。...,图形细节效果不好(如模糊和阴影) 2:创建方式 一般图片资源都放置在drawable文件夹下 两种创建方式;本地会提供一些资源图标供使用 传入SVG和PSD类型的图片生成矢量图 3:xml代码 实际上就是

    36710

    基于TNN在Android手机上实现图像分类

    /build_android.sh编译完成后,会在当前目录的release目录下生成对应的armeabi-v7a库,arm64-v8a库和include头文件,这些文件在下一步的Android开发都需要使用到...模型转换接下来我们需要把Tensorflow,onnx等其他的模型转换为TNN的模型。...如果要将PyTorch、TensorFlow 以及 Caffe 等模型文件格式转换为 TNN,首先需要使用对应的模型转换工具,统一将各种模型格式转换成为 ONNX 模型格式,然后将 ONNX 模型转换成...如果模型有多个输入,请使用 “;”进行分割。有的 TensorFlow 模型没有指定 batch 导致无法成功转换为 ONNX 模型,进而无法成功转换为 TNN 模型。..."> ImageView android:id="@+id/image_view" android:layout_width="match_parent"

    2.1K20

    Android Vector曲折的兼容之路

    Vector图像刚发布的时候,是只支持Android 5.0+的,对于Android pre-L的系统来说,并不能使用,所以,可以说那时候的Vector并没有什么卵用。...从PNG到SVG 设计师 要从一般使用的PNG图像转换到SVG图像,对于设计师来说,并不是一件难事,因为大部分的设计工具(PS、Illustrator等等)都支持导出各种格式的图像,如PNG、JPG,当然...程序员 不要求开发者都去学习使用这些设计工具,开发者可以利用一些工具,自己转换一些比较基础的图像,http://inloop.github.io/svg2android/ 就是这样一个非常牛逼的网站,可以在线将普通图像转换为...可以发现,这里我们使用的都是普通的ImageView,好像并不是AppcomatImageView,这是因为使用了Appcomat后,系统会自动把ImageView转换为AppcomatImageView...ImageView\ImageButton 对于ImageView这样的控件,要兼容Vector图像,只需要将之前的android:src属性,换成app:srcCompat即可,示例代码如下所示: <

    2.1K30

    一起来看看 Android 官推 kotlin-first 的图片加载库

    :Coil 的 API 充分利用 Kotlin 的新特性,而且还有丰富的拓展函数,简化和减少了很多样板代码 更流行:Coil 通过 Kotlin 来开发,并且使用包含 Coroutines、okhttp...) transformations(CircleCropTransformation()) } 二、常用的 API ---- ImageLoader ImageLoader 是 Coil 中对于图片加载的大管家...,可以对资源类型进行区分,举个例子: imageView.load("android.resource://example.package.name/drawable/image") imageView.load...将具有资源名称的 android.resource Uri 映射到包含其资源 ID 的 Uri Decoders Android 支持了很多图像格式,但也有很多它不支持的格式(例如:Gif、SVG、...视频帧等),所以 Coil 便提供了对应的拓展库 ① Gif(GifDecoder 支持所有 API 级别,但速度较慢,ImageDecoderDecoder 的加载速度快,但仅在 API 28 及更高版本可用

    1.2K20

    如何使用 RenderScript实现抖音的黑金效果

    最近,有人问我一个问题,如何使用彩图转为黑白,又如何将黑白图片转换为彩图?...对于这个问题,我能想到的最直接的方法是:调用Android的系统Api获取图片生成bitmap文件,然后再使用Android中的二值化技术即可实现;除此之外,还可以使用FFpeg等库的方式实现。...不过,我们今天要讲的是另外一种方案,即使用RenderScript方式。 一、RenderScript简介 RenderScript 是用于在 Android 上以高性能运行计算密集型任务的框架。...RenderScript 对于专注于图像处理、计算摄影或计算机视觉的应用来说尤其有用。 RenderScript使用的是一种类似于C/C++的rs 脚本语法,且是在运行时编译、跨平台的。...bitmap 上 // 释放资源 rs.destroy(); return outBitmap; } } 然后,我们运行下代码,看看前后的对比效果

    1.3K10

    Flutter图像编辑器应用(1)—— 亮度和对比度调节实现

    这意味着开发者可以使用相同的代码库构建出精美而高性能的应用,无论是在iOS还是Android平台上。使用Flutter开发移动应用的优势想象一下,是一位厨艺精湛的大厨,正在为一场盛宴准备美味佳肴。...逐步介绍如何使用Image Picker库选择图像、实现亮度和对比度调整功能,以及如何将编辑后的图像保存到设备相册中。使用Image Picker库选择图像首先,实现选择图像的功能。..._saveImage函数_saveImage函数负责将编辑后的图像保存到设备的相册中。首先将图像转换为字节数据,并使用ui库创建画布来应用亮度和对比度调整。...通过改变矩阵中的数值,实现对图像颜色的精确控制,达到调整亮度和对比度的效果。图像保存逻辑:使用ImageGallerySaver库将编辑后的图像保存到设备相册中。...这个库提供了简单易用的API,让能够轻松地将图像保存为png格式,并指定保存路径和文件名。

    1.2K10

    HenCoder Android 自定义 View 1-5: 绘制顺序

    对绘制的辅助 如果你没听说过 HenCoder,可以先看看这个: HenCoder:给高级 Android 工程师的进阶手册 简介 前面几期讲的是「术」,是「用哪些 API 可以绘制什么内容」。...比如,在 Debug 模式下绘制出 ImageView 的图像尺寸信息: public class AppImageView extends ImageView { ......4 onDrawForeground() 首先,再说一遍,这个方法是 API 23 才引入的,所以在重写这个方法的时候要确认你的 minSdk 达到了 23,不然低版本的手机装上你的软件会没有效果。...-- 使用半透明的黑色作为前景,这是一种很常见的处理 --> <AppImageView ... android:foreground="#88000000" /> ?...所以如果我想给这个 EditText 加一个绿色的底,我不能使用给它设置绿色背景色的方式,因为这就相当于是把它的背景替换掉,从而会导致下面的那条横线消失: <EditText ...

    99830

    android学习笔记----关于图形的基本处理讲解

    17之后使用,获取的像素宽高包含虚拟键所占空间,在API 17之前通过反射获取 // 获取显示的实际大小,而不减去任何窗口装饰或应用任何兼容性缩放因子。...> 旋转效果图: 缩放效果图: 平移效果图: 镜面效果图: 倒影效果图: 实现简易画板: MainActivity.java import android.Manifest; import...图像的压缩格式有JPEG、PNG、WEBP 撕衣服小案例: 真机测试(华为荣耀V9,8.0.0系统)运行效果图: Mainctivity.java import android.graphics.Bitmap...会根据设备的屏幕密度,将这一数值转换为不同的像素数量,那么对图片来说是如何操作的呢?...17之后使用,获取的像素宽高包含虚拟键所占空间,在API 17之前通过反射获取 // 获取显示的实际大小,而不减去任何窗口装饰或应用任何兼容性缩放因子。

    1.2K20

    安卓软件开发:如何实现机器学习部署到安卓端

    我个人特别喜欢使用 TensorFlow 框架做开发,简称“TF”,研究如何使用机器学习模型部署工作,TensorFlow 的功能强大,简化开发流程,真的非常成功。...四、项目开发 在这个项目中,我展示如何使用 TensorFlow Lite 实现一个简单的手写数字识别App。...我特别喜欢它的 API 设计,它让复杂的模型推理工作变得直观易懂。通过一些工具和指南,轻松就能将 Keras 模型转换为 .tflite 文件并集成到 Android 项目中。...在原始模型大小过大的情况下,通过量化能将模型大小减少近 75%,对于移动设备来说,这种优化是非常实用的。 6.2 如何通过量化技术优化模型 模型权重和激活函数的浮点数表示形式转换为整数表示的过程。...总体来说,使用 TensorFlow Lite 和相关技术时,虽然面临一些技术难点和挑战,但让我更加深入了解了移动端机器学习应用开发的核心技巧。 有任何问题欢迎提问,感谢大家阅读 :)

    2.8K105

    基于Paddle Lite在Android手机上实现图像分类

    下载地址为:,注意本教程使用的是静态库的方式,而且使用的是图像识别的,所以需要选择的下载库为with_extra=ON,arm_stl=c++_static,with_cv=ON的armv7和armv8...在构造方法中,通过参数传递的模型路径加载模型,在加载模型的时候配置预测信息,如预测时使用的线程数量,使用计算资源的模式,要注意的是图像预处理的缩放比例scale,均值inputMean和标准差inputStd...为了避免输入的图像过大,图像预处理变慢,通常在元数据预处理之前,需要对图像进行压缩,使用getScaleBitmap()方法可以压缩等比例压缩图像。..."> ImageView android:id="@+id/image_view" android:layout_width="match_parent"...:图片相机实时识别效果图:图片

    1.5K10

    Android 天气APP(二十九)壁纸设置、图片查看、图片保存

    二、正式开发 从上面的效果图来看,一步一步分析,第一个就是点击主页面右上角的加号会出出现一个弹窗,这里我把原来的背景管理给隐藏掉了,新增了一个壁纸管理的TextView,所以先打开window_add.xml...整理效果就是页面上滑动时顶部标题、和底部的浮动按钮上滑隐藏,下滑则显示。这里其实我分了两部分做,第一步是上面的标题,这个可以通过布局来解决,那就是协调布局。...因为普通的ImageView没有圆角啊,说道圆角图片我相信你不会陌生,你可能想到自定义ImageView来实现、或者使用第三方库来实现,但是ShapeableImageView里面就自带了圆角的样式给你...因为我要使用瀑布流,哪种错落感,会给用户不一样的体验,因为不设置高度,是因为需要动态设置ImageView的高度,来实现这个错落感。OK,下面该写这个Adapter了。...into(imageView); } } /** * 保存图片到本地相册 * * @param context 上下文 * @param

    1.9K50
    领券