Android ImageView Src 和Background 区别
之前使用Glide的时候被ImageView的图片设置弄混了(很低级的问题,确是经常犯的问题),所以就去看了一下ImageView,补补基础。
首先ImageView有两个显示图片的属性,分别是src和background。从名字上看可以知道第一个是资源(画),第二个是背景(画框)。
如何设置这两个值呢?
//background mImageView.setBackground(); mImageView.setBackgroundResource(); mImageView.setBackgroundColor(); mImageView.setBackgroundDrawable(); //src mImageView.setImageResource(); mImageView.setImageDrawable(); mImageView.setImageURI();
其中设置background的4个方法中,最终都是调用了setBackgroundDrawable()这个@Deprecated的方法,额。
一些区别:
1.src存放的是原图大小, background会根据组件的大小进行拉伸。
2.src是图片的内容(画),background是图片的背景(画框),可以同时存在。
3.background可以设置透明度,src不可以。
4.scaleType只对src起作用。这篇文字解释的很清楚->ScaleType详解
5.自定义ImageView中画图的时候使用setBackgroundDrawable。如果使用setImageDrawable,需要设置setIntrinsicHeight和setIntrinsicWidth,不然不会显示的,具体原因去看看源码吧。
通过此文希望能帮助到有需要的小伙伴,谢谢大家对本站的支持!
相关推荐
-
Android监听Home键和Back键的区别介绍
一:Android 中Home键监听和Back键监听的区别: (1).在Android中,当按下Home键的时候,默认情况下Stop前台的Activity,即Activity设置成停止状态[onStop()],而不是销毁状态[onDestory()].如果再次启动该Activity,不是调用onCreate()方法,而是调用onSavedInstanceState方法.则是从onRestart()开始-onStart()-onResume(). (2).当按下back键则不同,back键默认fi
-
Android加载View中Background详解
对大多数Android的开发者来说,最经常的操作莫过于对界面进行布局,View中背景图片的加载是最经常做的.但是我们很少关注这个过程,这篇文章主要解析view中背景图片加载的流程.了解view中背景图片的加载(资源的加载)可以让我们对资源加载的过程进行一些优化,另外当需要进行整个应用的换肤时,也可以更得心应手. View图片的加载,我们最常见的就是通过在XML文件当中进行drawable的设置,然后让Android系统帮我们完成,或者手动写代码加载成Bitmap,然后加载到View上.这篇文章主
-
Android解决dialog弹出时无法捕捉Activity的back事件的方法
本文实例讲述了Android解决dialog弹出时无法捕捉Activity的back事件的方法.分享给大家供大家参考.具体分析如下: 在一些情况下,我们需要捕捉back键事件,然后在捕捉到的事件里写入我们需要进行的处理,通常可以采用下面三种办法捕捉到back事件: 1)重写onKeyDown或者onKeyUp方法 2)重写onBackPressed方法 3)重写dispatchKeyEvent方法 这三种办法有什么区别在这里不进行阐述,有兴趣的朋友可以查阅相关资料. 然而在有dialog弹出时,
-
Android实现长按back键退出应用程序的方法
本文实例讲述了Android实现长按back键退出应用程序的方法.分享给大家供大家参考.具体分析如下: 最近在做一个Android上的应用,碰到一个问题就是如何实现长按back键退出应用程序.在网上查找了很多资料,发现几乎没有这样的实现,大部分在处理时是双击back键来退出应用程序.参考了一下双击back键退出应用程序的代码,网上主流的一种方法是下面这种方法,实现起来比较简单: @Override public boolean onKeyDown(int keyCode, KeyEvent ev
-
Android应用中Back键的监听及处理实例
MainActivity如下: 复制代码 代码如下: package cn.testnbackpressed; import android.os.Bundle; import android.view.KeyEvent; import android.app.Activity; /** * Demo描述: * 处理Back键按下事件 * * 注意事项: * 以下两种方法勿一起使用 */ public class MainActivity extends Activity { @Override
-
Android Back键点击两次退出应用详解及实现方法总结
思路:Android中捕获用户按键是在onKeyDown方法中,只需要判断用户按键是否是KEYCODE_BACK即后退键即可,剩下的即为判断两次点击BACK键时间间隔问题了 第一种实现方式 package com.example.clickexittest; import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.os.Message; import andr
-
Android实现Back功能代码片段总结
实现Back键功能方法有: 一:重写onBackPressed方法 复制代码 代码如下: @Override public void onBackPressed() { // do something what you want super.onBackPressed(); } 二:使用测试框架Instrumentation,模拟任意键按下动作,注意的是该方法不能在主线程中使用,只能开启新线程,带来的问题就是反应速度较慢,项目中不建议使用. 调用onBack()方法;产生back键单
-
Android中SwipeBack实现右滑返回效果
现在有很多App支持右滑返回,比如知乎,效果比较赞. 于是自己对Activity和Fragment进行了继承,派生出SwipeBackActivity和SwipeBackFragment,用于对这种效果的实现,也就是只要继承这两个类就可以了. 效果如下 Activity Fragment Frgament的效果实现比Activity稍微简单,因为Activity要考虑到dectorView. 支持滑动的控件SwipeLayout,核心思路就是把原有的控件添加到支持滑动的控件中,SwipeLayo
-
Android ImageView Src 和Background 区别
之前使用Glide的时候被ImageView的图片设置弄混了(很低级的问题,确是经常犯的问题),所以就去看了一下ImageView,补补基础. 首先ImageView有两个显示图片的属性,分别是src和background.从名字上看可以知道第一个是资源(画),第二个是背景(画框). 如何设置这两个值呢? //background mImageView.setBackground(); mImageView.setBackgroundResource(); mImageView.setBackg
-
Android中src和background的区别详解
ImageView中XML属性src和background的区别: background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸.src是图片内容(前景),bg是背景,可以同时使用. 此外:scaleType只对src起作用:bg可设置透明度,比如在ImageButton中就可以用android:scaleType控制图片的缩放方式,示例代码如下: <ImageView android:id="@+id/img" android:
-
Android中ImageView.src设置图片拉伸、填满控件的方法
问题 ImageView.src设置图片资源,图片不拉伸了,却有空隙部分: <LinearLayout android:id="@+id/linearLayout1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical" > <ImageView andro
-
Android 中clipToPadding 和 clipChildren区别和作用
Android 中clipToPadding 和 clipChildren区别和作用 Android 关于 clipToPadding 和 clipChildren区别和作用对于这两个属性那也是很神奇, 1.对于clipToPadding 默认是true, 这个属性一般都是viewgrounp对象才会用到, 他的意思就是 对于padding 所占的尺寸大小也绘制 其他的item的view, 2.对于clipChildren 默认是true,这个属性是让子view不受父view大小的限制,可以超过
-
Android ImageView 不显示JPEG图片的问题解决
Android ImageView 不显示JPEG图片 今天在写一个小实例,ImageView在xml里面设置的是INVISIBLE,在代码里需要设置成setVisibility(View.VISIBLE),但图片没有显示出来,换成PNG或其它的JPEG格式的图片确可以正常的显示. 原因:显示的图片大小为5.39K,图片格式有损坏,所以不能正常显示. 解决:换一张图片,或重新生成JPEG图片. 如果还是不能正常显示,建议在设置完VISIBLE后,调用如下方法: iv.setVisibility(
-
Android ImageView的selector效果实例详解
Android ImageView的selector效果实例详解 在平时开发中如Button我们给它加上selector分别呈现pressed以及normal效果能给我们的用户体验上大大增色不少,可是我们当我们是用ImageView来"当作"一个一个"Button"的时候发现直接设置selector却不起作用,当然此时我们的应用就表现的暗淡了.那我们就只能找到方法来解决这种情况. 首先定义一个selector文件: <selector xmlns:androi
-
Android ImageView实现图片裁剪和显示功能
首先在layout布局中设置按钮和一个ImageView <Button android:id="@+id/selectimagebtn" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="选择图片" /> <Button android:id="@+id/cutimagebt
-
Android startActivityForResult和setResult的区别
Android startActivityForResult和setResult的区别 startActivityForResult与startActivity的不同之处在于: 1.startActivity( ) 仅仅是跳转到目标页面,若是想跳回当前页面,则必须再使用一次startActivity( ). 2.startActivityForResult( ) 可以一次性完成这项任务,当程序执行到这段代码的时候,假若从T1Activity跳转到下一个Text2Activity,而当这个Tex
-
深入剖析Android中Service和Thread区别
Service既不是进程也不是线程,它们之间的关系如下: 可能有的朋友会问了,既然是长耗时的操作,那么Thread也可以完成啊.没错,在程序里面很多耗时工作我们也可以通过Thread来完成,那么还需要Service干嘛呢.接下来就为大家解释以下Service和Thread的区别. 首先要说明的是,进程是系统最小资源分配单位,而线程是则是最小的执行单位,线程需要的资源通过它所在的进程获取. Service与Thread的区别: Thread:Thread 是程序执行的最小单元,可以用 Thread
-
Android ImageView 固定宽高比例的实现方法
Android ImageView 固定宽高比例的实现方法 本文主要介绍 ImageView 固定宽高比例, 方法一:设置 adjustViewBounds="true", 方法二:使用 Universal-Image-Loader 图片缓存类,需要注意的是方法二和方法一同时使用导致设置无效. 方法一:设置 adjustViewBounds="true" <ImageView android:id="@+id/img_banner" and
随机推荐
- mssql转换mysql的方法小结
- C++内存泄漏及检测工具详解
- Eclipse Web项目打成war包的方法图解
- javascript使用for循环批量注册的事件不能正确获取索引值的解决方法
- JS控制图片等比例缩放的示例代码
- php获取开始与结束日期之间所有日期的方法
- php表单文件iframe异步上传实例讲解
- C#中DataTable删除行的方法分析
- PHP中配置IIS7实现基本身份验证的方法
- JS脚本根据手机浏览器类型跳转WAP手机网站(两种方式)
- python实现简单socket程序在两台电脑之间传输消息的方法
- 统计出现最多的字符次数的js代码
- MYSQL分页limit速度太慢的优化方法
- jquery监控数据是否变化(修正版)
- 基于JQuery的动态删除Table表格的行和列的代码
- 用Javascript轻松制作一套简单的抽奖系统
- JavaScript字符串删除重复字符的方法
- Eclipse插件大全 挑选最牛的TOP30(全)
- WinForm相对路径的陷阱
- javascript asp教程 日期相关