Welcome 微信登录

首页 / 移动开发 / Android

Android开发笔记之图片缓存、手势及OOM分析

Android开发笔记之图片缓存、手势及OOM分析

把图片缓存、手势及OOM三个主题放在一起,是因为在Android应用开发过程中,这三个问题经常是联系在一起的。首先,预览大图需要支持手势缩放,旋转,平移等操作;其次,图片在本地需要进行缓存,避免频繁访问网络;最后,图片(Bitmap)是Android中占用内存的大户,涉及高清大图等处理时,内存占用非常大,稍不谨慎,系统就会报OOM错误。庆幸的是,这三个主题在Android开发中属于比较普遍的问题,有很多针对于此的通用的开源解决方案。因此,本文主要说明笔者在...
Mac OS下为Android Studio编译FFmpeg解码库的详细教程

Mac OS下为Android Studio编译FFmpeg解码库的详细教程

NDK部分1、下载ndk这里就一笔带过了。2、解压ndk不要解压,文件权限会出错。执行之,会自动解压,然后mv到想放的地方。我放到了”/usr/local/bin/android-ndk-r10d”(此目录之后用$NDK_DIR指代)。3、下载Ffmpeg我下的是2.5.3版本。4、解压Ffmpeg解压Ffmpeg到$NDK_DIR/sources/ffmpeg-2.5.3。5、修改Ffmpeg编译配置在ffmpeg-2.5.3目录下把configure文...
Android编程画图之抗锯齿解决方法

Android编程画图之抗锯齿解决方法

本文实例分析了Android编程画图之抗锯齿解决方法。分享给大家供大家参考,具体如下:在画图的时候,图片如果旋转或缩放之后,总是会出现那些华丽的锯齿。其实Android自带了解决方式。方法一:给Paint加上抗锯齿标志。然后将Paint对象作为参数传给canvas的绘制方法。复制代码 代码如下:paint.setAntiAlias(true);方法二:给Canvas加上抗锯齿标志。有些地方不能用paint的,就直接给canvas加抗锯齿,更方便。复制代码 ...
Android后台定时提醒功能实现

Android后台定时提醒功能实现

前提:考虑到自己每次在敲代码或者打游戏的时候总是会不注意时间,一不留神就对着电脑连续3个小时以上,对眼睛的伤害还是挺大的,重度近视了可是会遗传给将来的孩子的呀,可能老婆都跟别人跑了。于是,为了保护眼睛,便做了个如下的应用:打开后效果:时间到之后有后台提醒:好了,接下来说一下做这样一个APP主要涉及到的知识点:Service:使用service,便可以在程序即使后台运行的时候,也能够做出相应的提醒,并且不影响手机进行其他工作。AlarmManager:此知识...
Android编程之TextView的字符过滤功能分析

Android编程之TextView的字符过滤功能分析

本文实例分析了Android编程之TextView的字符过滤功能。分享给大家供大家参考,具体如下:TextView可以设置接受各式各样的字符,通过过滤指定的字符来满足不同应用的输入和显示要求。通过xml配置:android:InputTypenumber 接受整数输入numberSigned 接受有符号整数输入numberDecimal 接受整数和小数的输入android:digits指定接受固定的数字,如android:digits="012345",则...
Android中SharedPreference使用实例讲解

Android中SharedPreference使用实例讲解

SharedPreference方面的内容还算是比较简单易懂的,在此还是主要贴上效果与代码,最后也是附上源码。首先是输入账号admin,密码123,选择记住密码登陆。登陆后就直接跳转页面。 随后再次打开app可以发现已经记住了密码。如果输错了密码,或者在登陆的时候没有选择记住密码,那么会将SharedPreference的文件清空,再次登陆后又会是空的EditText。MainActivity:import android.app.Activity; im...
Android实现点击Button产生水波纹效果

Android实现点击Button产生水波纹效果

先上图,看看接下来我要向大家介绍的是个什么东西,如下图: 接下来要介绍的就是如何实现上述图中的波纹效果,这种效果如果大家没有体验过的话,可以看看百度手机卫士或者360手机卫士,里面的按钮点击效果都是这样的,另外Android 5.0以上的版本也出现了这种效果。不多说,下面聊聊具体的怎么实现。首先大家看到的是三个button,水波纹的出现给我们的错觉是直接将波纹绘制在button上面的,但是这样能做到吗?首先button自己有background和src,如...
Android版的股票行情K线图开发

Android版的股票行情K线图开发

现在在手上的是一个证券资讯类型的app,其中有涉及到股票行情界面,行情中有K线图等,看到网上很多人在求这方面的资料,所以我特地写了一个demo在此处给大家分享一下。下面是做出来的效果图:背景图是利用canvas先画出一个矩形,然后再画几根虚线,均线图是通过path来绘制的,总之图的绘制是很简单的,我就不在这里作介绍了,大家可以去github下载源码看看。涉及到均线、最高价、最低价、收盘价、开盘价的概念大家可以百度一下。我再这里要介绍的是计算问题:大家可以看...
Android实现TextView两端对齐的方法

Android实现TextView两端对齐的方法

Android中的TextView控件默认是做不到两端对齐的,都是左对齐。可能的原因是安卓默认数字、字母不能为第一行以后每行的开头字符,因为数字、字母为半角字符,还有就是文字中的英文字符占用1个字节,而一个汉字占用两个字节。下面我就介绍下实现两端对齐的原理: 1、测量一个中文汉字所占用的宽度 2、根据TextView的宽度和一个汉字所占用的宽度以及字符之间的间隔计算出总行数。 3、根据padding和margin以及行高计算出TextView的总高度。 4...
Android开发之获取短信验证码后按钮背景变化并且出现倒计时

Android开发之获取短信验证码后按钮背景变化并且出现倒计时

目前越来越多的app在注册或是进行对应操作时,要求获取短信验证码,在点击了获取短信验证码的按钮后,就是出现倒计时,比如倒计时120S,在倒计时期间内,按钮背景变化并且出现倒计时,当倒计时结束后,如果你没有获取到验证码,可以再次点击。代码如下所示:VerCodeTimer mVerCodeTimer=(Button) findViewById(R.id.login_get_ver_code);private class VerCodeTimer extend...
android基本控件ToggleButton&Switch使用指南

android基本控件ToggleButton&Switch使用指南

ToggleButton(开关按钮)和Switch(开关)讲解:一、核心属性讲解:(1)ToggleButtontextOn:按钮被选中的时候文字显示textOff:按钮没有被选中的时候文字显示ToggleButton的状态只能是选中和未选中,并且需要为不同的状态设置不同的显示文本。以下案例为ToggleButton的用法目录结构main.xml布局文件<?xml version="1.0" encoding="utf-8"?>...
Android编程中@id和@+id的区别分析

Android编程中@id和@+id的区别分析

本文分析了Android编程中@id和@+id的区别。分享给大家供大家参考,具体如下:Android中的组件需要用一个int类型的值来表示,这个值就是组件标签中的id属性值。id属性只能接受资源类型的值,也就是必须以@开头的值,例如,@id/abc、@+id/xyz等。如果在@后面使用“+”,表示当修改完某个布局文件并保存后,系统会自动在R.java文件中生成相应的int类型变量。变量名就是“/”后面的值,例如,@+id/xyz会在R.java文件中生成i...
Android 中ListView setOnItemClickListener点击无效原因分析

Android 中ListView setOnItemClickListener点击无效原因分析

前言最近在做项目的过程中,在使用listview的时候遇到了设置item监听事件的时候在没有回调onItemClick 方法的问题。我的情况是在item中有一个Button按钮。所以不会回调。上百度找到了解决办法有两种,如下:1、在checkbox、button对应的view处加android:focusable=”false” 复制代码 代码如下:android:clickable=”false” android:focusableInTouchMode...
详解Android Scroller与computeScroll的调用机制关系

详解Android Scroller与computeScroll的调用机制关系

Android ViewGroup中的Scroller与computeScroll的有什么关系?答:没有直接的关系知道了答案,是不是意味着下文就没必要看了,如果说对ViewGroup自定义控件不感兴趣,可以不用看了。1.Scroller到底是什么?答:Scroller只是个计算器,提供插值计算,让滚动过程具有动画属性,但它并不是UI,也不是滑动辅助UI运动,反而是单纯地为滑动提供计算。无论从构造方法还是其他方法,以及Scroller的属性可知,其并不会持有...
Android系统更改状态栏字体颜色

Android系统更改状态栏字体颜色

随着时代的发展,Android的状态栏都不是乌黑一片了,在Android4.4之后我们可以修改状态栏的颜色或者让我们自己的View延伸到状态栏下面。我们可以进行更多的定制化了,然而有的时候我们使用的是淡色的颜色比如白色,由于状态栏上面的文字为白色,这样的话状态栏上面的文字就无法看清了。因此本文提供一些解决方案,可以是MIUI6+,Flyme4+,Android6.0+支持切换状态栏的文字颜色为暗色。修改MIUIpublic static boolean s...
Android中ListView结合CheckBox实现数据批量选择(全选、反选、全不选)

Android中ListView结合CheckBox实现数据批量选择(全选、反选、全不选)

APP的开发中,会常遇到这样的需求:批量取消(删除)List中的数据。这就要求ListVIew支持批量选择、全选、单选等等功能,做一个比较强大的ListView批量选择功能是很有必要的,那如何做呢?可想而知,要支持批量选择,那CheckBox的使用是不可或缺的,下面,就使用ListView结合CheckBox实现数据的批量选择。先看下效果图,有图有真相:先说明接下来要实现的ListView+CheckBox支持的功能: 1. 外部点击“编辑”(长按...
<< 211 212 213 214 215 216 217 218 219 220 >>