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

安卓 ImageView 的 scaleType 用法实用总结

安卓 ImageView 的 scaleType 用法实用总结 如果想快速决定用哪个值好,那直接跳到后面的总结吧。 ImageView 共有7种 scaleType。...以FIT_开头的4种,共同点是都会对图片进行缩放(只有fitXY不等比缩放); 以CENTER_开头的3种,共同点是居中显示,图片的中心点与ImageView的中心点重叠; MATRIX; 下面一个个讲解...,即图片的中心点和ImageView的中心点重叠。...也就是无论如何图片的大小都不会改变,控件大小决定可见范围。 如左图图片小于ImageView,则能够完全显示;右图图片大于ImageView,只能显示中间的一部分。...与fitCenter的区别是centerCrop的图片会填充整个区域,所以可能会被裁剪。 (注意这里图片背景为灰色,图片白色部分不属于ImageView,即ImageView已被图片占满。

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

    Delphi XE4 inline 的用法,类似于VC的Macro宏

    为了提高应用程序的性能,可以用inline声明一个函数过过程,对于声明为inline的过程,编译器在编译时,会取代正常的过程调用方式,取而代之是直接把这个函数的编译代码拿过来生成到调用该过程的地方,有多处调用一个函数...,都直接在调用处插入函数的编译代码,这样的弊端,会生成较大的EXE文件。...声明的方法: procedure MyFunc(x:integer):string;inline 有多种情况的函数或过程是不支持inline的: 后绑定的方法,如virtual,dynamic...代码的,如在上面的例子中,如果A单元也采用了D单元,从单元D的代码可能会被内联,因为它不参与循环依赖。...on 时,对于32byte的过程自动进行inline.

    67210

    列举一些除Java和C#之外的具有类似泛型类型擦除机制的编程语言

    除了Java和C#之外,还有一些编程语言采用了类似泛型的类型擦除机制(即编译时保留类型信息用于检查,运行时移除具体类型参数)。以下是几种典型语言及其特点: 1....Scala Scala的泛型默认采用类型擦除,但通过额外机制弥补运行时类型信息的缺失: 泛型类型参数在编译后被擦除,例如List[Int]和List[String]运行时类型相同。...Swift Swift的泛型机制在编译时进行严格类型检查,但运行时会部分擦除类型信息: 泛型类型的具体参数在运行时不直接可见(类似擦除),无法通过反射直接获取Array中的Int。...Dart Dart的泛型采用可选类型擦除(取决于编译模式): 在开发模式(JIT编译)下,泛型类型信息部分保留,支持有限的运行时检查。...有限的运行时能力:通常需要额外机制(如类型标签、内联函数)才能在运行时处理泛型类型信息。 这种设计平衡了类型安全与性能/兼容性,是许多现代编程语言处理泛型的常见选择。

    18910

    短小精悍之 Redis 命令行工具有趣的罕见用法

    我们天天都在使用 Redis 内置的命令行工具 redis-cli,久而久之以为它就是一个简单的交互式 Redis 数据结构手工操作程序,但是它背后强大的功能绝大多数同学可能闻所未闻。...本节我们一起来挖掘这些鲜为人知的有趣用法。...执行单条命令 平时在访问 Redis 服务器,一般都会使用 redis-cli 进入交互模式,然后一问一答来读写服务器,这种情况下我们使用的是它的「交互模式」。...$ redis-cli info > info.txt $ wc -l info.txt 120 info.txt 上面的命令指向的服务器是默认服务器地址,如果想指向特定的服务器可以这样...不过还有另外一种比较便捷的方式,那就是直接使用 redis-cli 来批量执行一系列指令。

    58220

    跟我学Android之五 常规组件

    本章目标 掌握单选按钮的用法 掌握复选框的用法 掌握开关按钮的用法 掌握图像视图的用法。 掌握自动完成文本框的用法。...ToggleButton是一个用于表示开关状态的按钮 使用ToggleButton标签在布局文件中申明​ <ToggleButton android:id="@+id/togglebtn...:adjustViewBounds 是否保持宽高比 android:tint 图片的着色 对应的类是android.widget.ImageView ImageView android...,是一种类似于Web中AJAX技术下的自动补全功能,组件类:ndroid.widget.AutoCompleteTextView ​自动完成文本框的使用场合​ 候选内容很多,不适合采用下拉框进行选择...:completionThreshold 定义在下拉显示提示前,用户输入的字符数量 android:dropdownHeight 指定显示提示的时候下拉框的高度 作业:实现类似百度的搜索效果

    96410

    Android开发笔记(一百二十六)自定义音乐播放器

    因此,我们需要一个短声音专用的播放器,这个播放器在Android中就是SoundPool。...延迟非常小; 3、可以同时播放多个音频,从而实现游戏过程中多个有效叠加的情景; 当然,SoundPool带来方便的同时也做了一部分牺牲,下面是使用它的一些限制: 1、SoundPool最大只能申请...1M的内存,这意味着它只能播放一些很短的声音片段,不能用于播放歌曲或者游戏背景音乐; 2、虽然SoundPool提供了pause和stop方法,但是轻易不要使用这两个方法,因为它们可能会让你的App异常或崩溃...; 3、SoundPool播放的音频格式建议使用ogg格式,据说它对wav格式的支持不太好; 4、待播放的音频要提前加载进SoundPool,不要等到要播放的时候才加载。...有关ContentResolver的具体用法参见《Android开发笔记(五十四)数据共享接口ContentProvider》。

    3.5K30

    Android开发(44) 使用了 SoundPool 播放提示音

    概述 SoundPool 一个声音播放的辅助类,从名字可以看出,它具有 “池”的能力(缓存),它先加载声音文件到内存,以支持多次播放声音文件。...特点 SoundPool适合 短小的 声音文件 SoundPool适合播放 “需要多次播放的提示音”,比如在 一些常用的 请登录,请点击什么的 相比mediaPlayer,耗用资源更少 支持 同时 播放多个声音...(); //这里我创建一个 hash 表,用于记录加载过的声音的ID,一般我们会定义一个常量作为检索该声音的KEY 加载声音文件 soundPoolMap.put...注册一个监听器,在加载声音完毕的时候获得消息 mSoundPool.setOnLoadCompleteListener(new SoundPool.OnLoadCompleteListener...() { @Override public void onLoadComplete(SoundPool soundPool, int sampleId,

    1.8K00

    多媒体开发

    4.1.2 SoudPool播放音效 因为MediaPlayer具有资源占用较高、延迟时间较长、不支持多个音频同时播放的特点,对于在游戏开发中出现的需要经常播放密集、短促的音效,使用MediaPlayer...我们可以使用SoundPool技术来实现这种短促且对反应速度比较高的情况,比如游戏音效或按键声等。SoundPool除了资源占用低和反应快之外,它还支持自行设置声音的品质、音量、播放比率等。...使用SoundPool播放声音的步骤如下: Ø 调用SoundPool的构造器创建SoundPool对象。...Ø 调用SoundPool的play()方法播放声音。 ​示例4.2:​ 编写一个程序,实现游戏中的爆炸、射击、射箭三种动作的声音播放的效果。...; } } } 在SoundPool的构造方法中可以指定它总共支持多少个声音、声音的品质等,该方法的原型如下 : Ø SoundPool.SoundPool(int maxStreams, int

    1.4K10

    《移动互联网技术》第九章 感知与多媒体: 了解质感设计的基本原则和设计方法

    ; ​ } ​ } ​ }); ​ … … } } “上一首”和“下一首”功能的代码类似,都是调用MusicService中的对应函数,具体实现可自行补全。...Material Design要求交互和界面视觉更符合现实世界的物理反馈法则,比如一个小球下落,在真实世界中是一个加速的过程,如果在Android界面上显示小球下落的动画,也要有类似现实世界的感觉。...利用质感设计的API 接口,可以用来设计自己的具有Material Design的交互界面。 在界面上,菜单选项不显示在主屏幕上,而是通过滑动的方式将隐藏的菜单显示出来。...第二个控件放置一个ImageView控件,作为滑动菜单(侧边菜单)显示的内容,当然也可以使用其他控件。...2**、本单元课后习题** 1、说明SoundPool与MediaPlayer的区别,以及在什么情况下使用SoundPool。

    77410

    实现马蜂窝旅游头像泡泡动画

    (=@__@=) 先看看效果图: [strip] 效果分析: [1240] 1、涉及到有多个view在做动画操作 这里需要继承FrameLayout来左父布局 供图片做动画操作 2、每个子view的动画路径类似于...) 4、动画是循环不停的播放 我采用的是RxJava timer()操作符 不断的发送随机延迟消息去通知动画的执行 5、最后就剩下一些停止动画操作的开关设定 实现步骤 1、一些基本的初始化工作 public...= getTextView(); initData(tempImageView); } //创建执行动画的具体角色 private ImageView getImageView...startAnimation(500 + duration); } }); } //动画执行的一些开关操作...大家可以去自由发挥, 希望这篇水文能帮助到那些有类似需求的同学,我们应该把时间拿去做一些更有用的事情,不过截止到目前 马蜂窝最新版 已经没有该头像的泡泡动画,想必他们也改了吧!

    77200

    超全的Android组件及UI框架

    android:measureWithLargestChild    当属性设置为true时,所有带权重的子元素都会具有最大元素的最小尺寸 android:orientation    设置布局管理器内组件的排列方式...ImageView 图像视图 3.1 常用属性 ImageView 有 2中属性,分为为: src, backgroud,他们之间的区别是: background 通常指的都是 背景, 而 src 指的是...ToggleButton 开关按钮 8.1 常用属性 ToggleButton (开关按钮) 允许我们在两个状态之间切换,有点类似于电灯的开关 ToggleButton 和 CheckBox 一样都继承自...Switch 开关 9.1 常用属性 允许我们在两个状态之间切换,有点类似于现在流行的滑动解锁 Switch (开关) 也继承自 Button 和 CompoundButton,所以拥有它们的属性、方法和事件...不过 Switch 也拥有自己的属性,而且特别的多 9.2 监听方法 Switch 提供了一些方法用来改变或获取自身的状态和开关时的文本 10.

    7.9K31

    Android Volley完全解析(二),使用Volley加载网络图片

    本篇文章中我们即将学习关于Volley更加高级的用法,如何你还没有看过我的上一篇文章的话,建议先去阅读Android Volley完全解析(一),初识Volley的基本用法。...我们都知道,Universal-Image-Loader具备非常强大的加载网络图片的功能,而使用Volley,我们也可以实现基本类似的效果,并且在性能上也豪不逊色于Universal-Image-Loader...ImageRequest的用法 前面我们已经学习过了StringRequest和JsonRequest的用法,并且总结出了它们的用法都是非常类似的,基本就是进行以下三步操作即可: 1....其中,StringRequest和JsonRequest都是继承自Request的,所以它们的用法才会如此类似。...不同于以上两种方式,NetworkImageView是一个自定义控制,它是继承自ImageView的,具备ImageView控件的所有功能,并且在原生的基础之上加入了加载网络图片的功能。

    1.7K60
    领券