首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android控件之ImageView

零、前言 1.ImageView地位:直接继承自View,安卓源码1600+,算是个小类,但图片显示基本上都用它 2.scaleType有点小烦,不过看图还是挺清晰的 3.cropToPadding...、adjustViewBounds、tint 4.图片设置 源码中ImageView的自定义属性: * @attr ref android.R.styleable#ImageView_adjustViewBounds...,大图同fitCenter) matrix:不改变原图的大小,从ImageView的左上角开始绘制,超过ImageView的裁剪 二、剪裁:cropToPadding:需要与scrollX或scrollY...同用,单独无效 测试时true和false没有区别。...tint="#22FF4081" --- 五、最重要的要数设置图片了 1.xml设置图片 android:src="@mipmap/iv_50x40" 2.代码中设置 Drawable和Bitmap都是安卓中图片显示和处理的重要类

1K00

用 Java 做个“你画手机猜”的安卓小游戏

随着算力的不断增进,机器学习任务已经可以直接在边缘设备部署,包括各类运行安卓系统的智能手机。但是,由于安卓本身主要是用 Java ,部署基于 Python 的各类深度学习模型变成了一个难题。...3.2 第二步: 应对绘画动作 在安卓设备上,你可以自定义安卓的触摸事件响应来应对用户的各种触控操作。...在我们的情况下,我们需要定义下面三种时间响应: touchStart:感应触碰时触发 touchMove:当用户在屏幕上移动手指时触发 touchUp:当用户抬起手指时触发 与此同时,我们用 paths...3.2.2 操作开始(touchStart) 当用户触碰行为开始时,下面的代码会建立一个新的路径同时记录路径中每一个点在屏幕上的坐标。...期待看到你创建的第一个 DoodleDraw 安卓游戏! 最后,可以在GitHub找到本教程的完整案例代码。

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

    3-VIV-Android控件之ImageView

    零、前言 [1].ImageView地位:直接继承自View,安卓源码1600+,算是个小类,但图片显示基本上都用它 [2].scaleType有点小烦,不过看图还是挺清晰的 [3].cropToPadding...、adjustViewBounds、tint [4].图片设置 源码中ImageView的自定义属性: * @attr ref android.R.styleable#ImageView_adjustViewBounds...#是否截取指定区域用空白代替,需要与scrollY一起使用 一、剪裁类型:scaleType 一图抵千言:左边大图,右边小图 默认:fitCenter 在xml里matrix表现良好(如图开始)...:不改变原图的大小,从ImageView的左上角开始绘制,超过ImageView的裁剪 二、剪裁:cropToPadding:需要与scrollX或scrollY同用,单独无效 测试时true和false...tint="#22FF4081" ---- 五、最重要的要数设置图片了 1.xml设置图片 android:src="@mipmap/iv_50x40" 2.代码中设置 Drawable和Bitmap都是安卓中图片显示和处理的重要类

    78120

    【Android 性能优化】布局渲染优化 ( 过渡绘制 | 背景设置产生的过度绘制 | Android 系统的渲染优化 | 自定义布局渲染优化 )

    , 设置一张图片 , 会增加一次绘制 , 如果再给该 ImageView 组件设置背景颜色 , 那么又会增加一次绘制 , 那么该 ImageView 组件肯定过渡绘制了 ; 二、 Android 系统的渲染优化...---- 在 【Android 性能优化】布局渲染优化 ( CPU 与 GPU 架构分析 | 安卓布局显示流程 | 视觉与帧率分析 | 渲染超时卡顿分析 | 渲染过程与优化 ) 博客中分析了图像渲染的...GPU 存储纹理机制 : GPU 中的显存可以存储纹理资源 , 即多维向量图形资源 , 在渲染时 , 可以直接使用该存储的资源 , 不用每次都让 CPU 传递数据过来 ; 2....自定义组件过度绘制问题描述 : 自定义控件 , 在自定义的 onDraw 方法中 , 绘制多张图片 , 如果图片之间产生重叠 , 重叠绘制的部分就出现了过度绘制 ; 2....自定义组件绘制原则 : ① 两张图片 : 图片 A 和 图片 B ; ② 图片覆盖 : 当图片 A 被图片 B 覆盖时 , 只绘制图片 A 显示的部分区域 , 图片 A 被图片

    4.7K30

    安卓天气预报app(二)——适配器、每小时数据展示

    ✅简易的安卓天气app(一)——解析Json数据、数据类封装 简易的安卓天气app(二)——适配器、每小时数据展示 ✅简易的安卓天气app(三)——城市管理、数据库操作 ✅简易的安卓天气app(四)—...项就是当天详细天气),用来存放城市的当天天气,如果我们想要展示更精美的页面呢,或者说是展示更多的数据,比如,我们这里用RecyclerView展示一天中每个小时的天气,实现效果(若是想从当前时刻开始,获取小时温度,可自行实现...layout_width="match_parent" android:layout_height="match_parent" /> id自定义名字...这样变量名就可以随便命名了 若是不想实现,就老老实实用private List hours;,里面的变量名用hours命名之后就会发现可能报错,嘿嘿,每个小时数据里也有个hours 防止出错...List,而DayWeatherBean中又有List,一层一层包着, 当数据异步封装好后, 添加属性 private HourWeatherAdapter mHourAdapter;//适配器

    1.1K80

    Flutter Android 端 FlutterView 相关流程源码分析

    VSYNC 流程源码全方位分析》 《Flutter 安卓 Platform 与 Dart 端消息通信方式 Channel 源码解析》 背景 前面系列文章我们分析了 FlutterActivity 等相关流程...//...... } }; //...... } 看完上面代码你也就明白为什么我们在 Android Studio 中查看 FlutterActivity 的安卓层级树时...如下图: [在这里插入图片描述] FlutterTextureView 相关分析 在前面系列文章中分析 FlutterActivity 时我们知道,FlutterView 创建时依赖一个 FlutterTextureView...FlutterView 自己在安卓端其实不做什么事的,主要就是负责把事件通知到 flutterEngine 端去,然后 flutterEngine 再传递到 dart 响应,从而触发新的绘制刷新效果。...到此也就应证了我们前面说的,FlutterView 只是一个在安卓端管理的 View,内部的渲染有专门的 View 负责,内部的事件全部通过原生分发到 flutterEngine 进行 dart 代码的触发处理

    1.6K00

    Android – Drawable 详解

    前言 Drawable是可以绘制到屏幕上的图形。 Drawable用于定义形状,颜色,边界,渐变等,然后将其应用于Activity中的View。 这通常用于自定义显示在特定View。...用法 在不同情况下有很多可绘制的类型,设置按钮的状态行为,创建可伸缩的按钮背景和创建复合可绘制图层。...这用于创建一个复杂的形状,然后可以作为布局或视图的背景附加在屏幕上。例如,可以使用可绘制的形状来更改按钮背景的形状,边框和渐变。 一个形状只是一个属性的集合,被合并来描述一个背景。...使用纯色形状和渐变,我们可以自定义按钮,布局和其他视图的外观,而不需要使用任何图片。请注意,可以使用PathShape和ArcShape在运行时创建自定义形状。...可伸缩的 Nine-Patch Image NinePatch是一个PNG图像,你可以在该图像中定义当View的内容超出正常图像边界时定义拉伸的可伸展区域。

    5.4K50

    2018-07-25

    rv1.png rv2.png rv3.png rv4.png rv5.png rv点击1.gif rv点击2.gif 增加与删除.gif CardView.gif 访问地址,返回Json数据.png 安卓中使用...OKGO访问返回json.png json生成.png 自定义键名.png Json解析.png 日期.png 号码归属地.png 号码归属地查询MVP类图.png 号码归属地查询.gif 手机归属地查询缓存....png 宽高.png 宽高控制.png 效果图 点击事件.gif 点击事件升级.gif 与安卓Path结合.png 方向.png 拉环控件 拉环控件.gif 混沌战士 网格坐标系效果 深拷贝.png...png 结果.png handler2.png 延迟.gif empty.png post.png runout.png 接口.png json.png retrofit1.png json.png 安卓获取...json.png 安卓获取json异步.png 请求图片结果.png 定义参数.png pull解析.png use_svg.png 局限性.png 关于密码问题.png 发送邮箱.png 发送html

    83720

    D1-从N角星开始论述自定义控件

    零、前言 1.个人对安卓绘制逻辑感到繁琐,自己封装了一个绘图框架 2.自定义控件的绘制流程都基于我的这个库,详见:开源计划之--Android绘图库--LogicCanvas 3.星星控件目的:...我们常用的TextView、ImageView等都可以在xml里配置相关属性,就是自定义属性 第一步,明确自己的自定义属性有哪些,最后先想好名字 第二步,在res/values文件夹下创建attrs.xml...} 第四步:在xml里使用(为简洁、外层的布局省略): 其中标签头是类全名:com.toly1994.d.view.StarView xmlns:toly="http://schemas.android.com...: 1本文由张风捷特烈原创,转载请注明 2欢迎广大编程爱好者共同交流 3个人能力有限,如有不正之处欢迎大家批评指证,必定虚心改正 4你的喜欢与支持将是我最大的动力 2.连接传送门: 更多安卓技术欢迎访问...:安卓技术栈 我的github地址:欢迎star 简书首发,腾讯云+社区同步更新 张风捷特烈个人网站,编程笔记请访问:http://www.toly1994.com 3.联系我 QQ:

    43740

    比较(五)利用python绘制棒棒糖图

    比较(五)利用python绘制棒棒糖图 棒棒糖图(Lollipop plot)简介 棒棒糖图实际上是修饰后的条形图。当在处理大量的值,并且当这些值都很高时,棒棒糖图就很有用。...快速绘制 基于matplotlib import pandas as pd import numpy as np import matplotlib.pyplot as plt # 自定义数据 df...plt.stem(ordered_df['values']) plt.xticks( my_range, ordered_df['group']) plt.show() 定制多样化的棒棒糖图 自定义棒棒糖图一般是结合使用场景对相关参数进行修改...matplotlib主要利用stem绘制棒棒糖图,可以通过matplotlib.pyplot.stem[1]了解更多用法 修改参数 import pandas as pd import matplotlib...left') plt.xlabel('Value of the variable') plt.ylabel('Group') plt.show() 总结 以上通过matplotlib的stem快速绘制棒棒糖图

    14810

    安卓入门(八)

    Android和ios之间的对比,如今安卓市场和ios市场平分天下,那么这两者各有什么好处和坏处呢?...现在,很多语言发展了,那么有人问有必要学安卓吗?答案是更具自己的兴趣爱好,要学习安卓的,不过人可以多方面的发展,又不是机器人,叫你学你就学一样,对吧!...什么是程序框架层: 程序框架层是安卓系统提供给应用程序层所使用的API框架,记住就行 什么是核心类库: 核心类库是由系统库和运行环境组成,系统库主要是由C和C++语言支持的。...最初安卓是在Eclipse上开发的,但是现在都在Eclipse上了,现在Eclipse只是做练习用的,看到有人说如何用Eclipse搭建,我之前搭建过一次,后来觉得Android studio这款比较牛逼...,当时搭建完Eclipse时,觉得虚拟机不酷,没Android studio的酷哦!

    58320

    一种android中实现“圆角矩形”的方法

    很怀疑为啥安卓的控件不内置这样的属性(我不知道有)? 之前用到的网络图片加载库(UniversalImageLoader等)都自带“圆形图片”这样的功能。...下面采取自定义ImageView子类的形式提供案例来说明“Xfermode + Path”实现圆角矩形的思路。...android.graphics.Canvas#clipPath(android.graphics.Path)用来沿着Path指定的路线从目前的canvas裁剪出新的区域的canvas,就是改变了画布的可绘制区域...理解上,就像你拿着剪刀沿着圆环路径裁剪画纸就可以裁剪出一个圆型画纸一样。 Canvas类的一些API是直接绘制内容的操作,另一些是针对canvas(画布)本身做设置的。...上面说到在使用Xfermode时,可以开启硬件加速(hardware layer)来直接绘制,此时不需要产生新的layer,会具有更好的性能,后面会给出这种实现。

    3.6K70

    关于Android 5.0 Lollipop(棒棒糖)你必须知道的七件事

    另外该系统还可以延长电池的使用时长,提供系统更新通知,支持OpenGL ES 3.1 和64-bit。 谷歌称Lollipop是最大的安卓版本系统,拥有的API超过5000个。...该设计使用了大量的动画和分层元素来表达它的主题。 材料设计界面可以在多种类型的设备上运行,包括智能手机、平板电脑、台式机和电视。新的界面支持高程值、实时阴影和光线照明,从而可以达到一种3D的效果。...(3)安卓智能锁 安卓智能锁使手机解锁更加的方便快捷,而无需不断的输入pin码和跟踪模式。安卓智能锁可通过匹配你的设备来保护你的手机。这些设备包括安卓智能手表、汽车甚至是面部表情。 ?...ART——一个全新的安卓运行时间,提升了应用和反应性能。该新版本的安卓系统已经做好了迎接64-bit的到来。 (7)电池寿命 最后,Android Lollipop希望对手机电池进行大幅度的改进。...当手机的电量较低时, BATTERY LIFE功能会自动将手机切换到节能模式。 据谷歌公司称,这一功能可以使手机即使在低电量的情况下还可继续运行90分钟。

    1.2K60

    Android开发:ListView、AdapterView、RecyclerView全面解析

    工作原理:当屏幕需要显示x个item时,那么ListView只会创建x+1个视图,当第一个item离开屏幕时,此item的view就会被拿来重用(用于显示下一个item(即第x+1个)的内容)。...当第1个item离开屏幕时,此item的view就会被拿来重用(用于显示第8个item的内容)。原理如下图显示 ? ListView的使用 1....android:listSelector 指定被选中的列表项上绘制的Drawable android:scrollingCache 滚动时是否使用缓存 如果设置为true,则在滚动时将会使用缓存 android...BaseAdapter 定义 可自定义ListView,通用用于被扩展。扩展BaseAdapter可以对各个列表项进行最大程度的定制 使用步骤: 1. 定义主xml布局 2....总结 本文对ListView、AdapterView、RecyclerView进行了全面整理,接下来我会介绍继续介绍Android开发中的相关知识,有兴趣可以继续关注Carson_Ho的安卓开发笔记 -

    3.5K30

    VV-安卓布局总汇篇

    脱出来的控件毕竟是IDE的智商,一个控件属性非常多,可读性不怎样,所以在此总结一下安卓的布局 插播一段感悟:我经常思考工具与使用者间的关系: 用工具和会用工具之差异:良庖岁更刀,割也;族庖月更刀...,折也,工具的使用方法体现了一位工匠的技艺 《庖丁解牛》是我最喜欢的一篇古文,如何在做任何事上以无厚入有间,恢恢乎其于游刃必有余地矣是我的思考 文中的八字成为我接触新事物的律典:依乎天理,因其固然。...本文测试图标是svg的安卓xml版,通过精心挑选,如下: ?...--上--> ImageView android:id="@+id/id_iv_top" android:layout_width="30dp"...android.support.constraint.ConstraintLayout> ---- 后记:捷文规范 1.本文成长记录及勘误表 项目源码 日期 备注 V0.1--无 2018-11-2 VV-安卓布局总汇篇

    72340

    首页-底部Tab导航(菜单栏)的实现:FragmentTabHost+ViewPager+Fragment

    FragmentTabHost 用于实现点击选项进行切换选项卡的自定义效果 使用FragmentTabHost,就是先用TabHost“装着”Fragment,然后放进MainActivity里面...注: 1.ViewPager类直接继承了ViewGroup类,和LinearLayout等布局一样,都是一个容器,需要在里面添加我们想要显示的内容。...2.ViewPager类需要PagerAdapter适配器类提供数据,与ListView类似 3.Google官方建议ViewPager配合Fragment使用 具体使用请参考我写的另外一篇文章...例如:当activity暂停时,它拥有的所有的Fragment们都暂停了,当activity销毁时,它拥有的所有Fragment们都被销毁。...接下来我会介绍继续介绍Android开发中的相关知识,有兴趣可以继续关注Carson_Ho的安卓博客 ---- 请帮顶 / 评论点赞! 因为你的鼓励是我写作的最大动力!

    1.9K20

    【Android从零单排系列九】《Android视图控件——ImageView》

    一.ImageView基本介绍  在 Android 应用开发中,我们通常使用 ImageView 来显示图片。...:同上,缩放后放右下角 fitXY:对图像横纵方向进行独立缩放,使得该图片安全适应imageview,但图片宽高比可能发生改变 center:保持原图大小,显示在中心,当原图大小大于imageview大小...:不改变原图大小,从imageview左上角开始绘制原图,原图超过imageview的部分作裁剪处理 alpha 设置透明度 ImageView android...Picasso:和Square的网络库一起能发挥最大作用,因为Picasso可以选择将网络请求的缓存部分交给了okhttp实现 Glide:模仿了Picasso的API,而且在他的基础上加了很多的扩展(...1.图片存储在安卓系统的匿名共享内存,而不是虚拟机的堆内存中,图片的中间缓冲数据也存放在本地堆内存,所以,应用程序有更多的内存使用,不会因为图片加载而导致oom,同时也减少垃圾回收器频繁回收Bitmap

    1.3K30

    机器学习为核心,DeepMind助力谷歌开发的安卓 9「Pie」今日上线

    今日,谷歌宣布将把安卓 9 的源代码放到安卓开源项目上(AOSP),开始在所有的谷歌 Piexl 手机上用安卓 9。据介绍,安卓 9 拥有的机器学习能力能让手机变得更智能、便利、个性化。...放大镜部件允许用户通过可拖动窗口查看放大的文本,从而精确定位光标或者文本选择句柄。用户可将它添加到任何窗口视图中,这样就可以在自定义部件或自定义文本中使用它。...在使用 LLVM 构建时,谷歌还在 Android 常用核心中引入了 CFI 核心支持。 此外,谷歌还扩展了整数溢出错误 sanitizers 的使用以缓解内存损坏和信息泄漏漏洞等问题。...例如,当网络拥堵时,JobScheduler 可暂缓大型网络请求。当未计量时,它可运行预读作业以改善用户体验,例如预读标题。...现代安卓 作为 Android 9 项目的一部分,谷歌的目标是现代化安卓的基础建设,以及在其上运行的 app。

    2K10
    领券