Android 零碎知识
拭心
我的新书《Android 性能优化入门与实战》上架了,快速提升技术实力,强烈推荐!!!
展开
-
Android应用中如何调用系统闹钟及日历
今天开发一个小应用需要添加一个响应事件实现跳转到闹钟和日历,在bianfang原创 2014-10-25 17:49:32 · 8668 阅读 · 2 评论 -
Android存储之SharedPreferences
2015.3.20 0:461.SharedPreferences 是一种轻量级的文件文件存储方式,他将数据以值key-value方式存储在xml文件中(1)存数据// /data/data/包名/shared_prefs/SharedPreferences sp = context.getSharedPreferences(“文件名”,Context.MODE_PRIVATE原创 2015-03-20 01:02:30 · 1423 阅读 · 0 评论 -
Android自定义组合控件的过程
自定义组合控件的过程:(1)自定义一个View,并且继承一种布局,一般来说是相对或者线性布局(2)实现父类的(3个)构造方法,通常需要在每个构造方法中调用自定义的初始化布局方法(比如那个initView方法,这个方法需要将我们组合控件的那个布局文件转换成一个View,并且加载到自定义的View; 然后将要操作到的控件实例化) private void iniView(Context原创 2015-03-31 16:31:48 · 1714 阅读 · 0 评论 -
Android 4.2官方文档chm格式下载
Android 4.2官方文档我就不费口舌介绍了,学习Android必备女朋友心血来潮帮我清理电脑垃圾,结果删除了好多文档和API,呜呜,我的资源!重新找到2个Android 4.2官方文档chm格式的云盘下载地址,记下来供自己和大家不时之需。云盘1 http://pan.baidu.com/s/11WaSI云盘2 http://pan.baidu.co原创 2015-04-02 16:06:17 · 1243 阅读 · 0 评论 -
Activity间跳转时的效果设计,页面切换效果
Activity间跳转时的效果设计:(1)在res文件夹下新建个anim文件夹(2)在anim文件夹下建立控制页面切入、切出的效果文件,例如如下:xml version="1.0" encoding="utf-8"?>translate xmlns:android="http://schemas.android.com/apk/res/android" android:d原创 2015-04-02 17:11:25 · 1901 阅读 · 0 评论 -
Android自定义按钮状态背景
如果你觉得Android自带的按钮默认、按下时样式太low,可以尝试自定义按钮状态背景:首先把我自定义的按钮状态背景图贴上来:默认时:按下后:有没有很小清新呐~~~自定义按钮状态步骤如下:(1)在res文件夹下新建个drawable文件夹(2)把要设置的按钮默认背景图片与按下时背景图片放入drawable文件夹中(3)在drawable文件夹中新建个xm原创 2015-04-02 13:36:54 · 2267 阅读 · 0 评论 -
Android ContentProvider之联系人数据库及操作
通讯录数据库的主要表之间架构关系:第一层:Data层,每种独立的数据类型占一行。具体哪些独立的数据可以占一行,可以在mimetypes这张表中找到, 原生Android的系统 一共12种,例如name,phone,email ect..第二层:RawContracts层,由Data层的多条数据组合成一个完整的联系人信息。第 三层:Contracts层,这一层主要注意原创 2015-03-24 17:04:14 · 2765 阅读 · 0 评论 -
Android自定义一个对话框
Android自带的对话框只有title、Message、Button三部分,如果你想要一个有更多功能,比如说增加几个EditText等额外功能,就需要自定义一个对话框:步骤如下:(1)创建一个AlertDialog.Builder对象AlertDialog.Builder builder = new Builder(HomeActivity.this);(2)将我们做原创 2015-03-31 16:32:46 · 1886 阅读 · 0 评论 -
Android一键锁屏实现(附源码链接)
市面上一键锁屏APP众多,但试用后发现基本都是一个原理:开启设备管理员获得权限,然后实现锁屏。本案例和上述APP原理相同,不多作介绍,源码链接如下:http://download.csdn.net/detail/u011240877/8570415原创 2015-04-07 14:06:20 · 1980 阅读 · 0 评论 -
【ViewPager的学习】二、添加图片描述及指示点动态改变
第一节已经简单实现了ViewPager,但是实际应用中常常需要在图片资源底部添加一些图片描述信息,还有一些指示点。效果如下:指示点可以用shape生成一个简单的原点,代码如下:<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval">原创 2015-04-29 22:08:36 · 2820 阅读 · 2 评论 -
Android之Bitmap
android 中的 Bitmap 相关Bitmap 相关1. Bitmap比较特别 因为其不可创建 而只能借助于BitmapFactory 而根据图像来源又可分以下几种情况:* png图片 如:R.drawable.tianjinJava代码 Bitmap bmp = BitmapFactory.decodeResource(this.getResources()转载 2015-04-29 23:46:42 · 1056 阅读 · 0 评论 -
Android的bitmap和优化
内存管理是个永恒的话题!内存溢出:就是分配的内存不足以放下数据项序列。如在一个域中输入的数据超过了它的要求就会引发数据溢出问题,多余的数据就可以作为指令在计算机上运行。就是你要求分配的内存超出了系统能给你的,系统不能满足需求,于是产生溢出内存泄漏:是指在堆上分配的内存没有被释放,从而失去对其控制。这样会造成程序能使用的内存越来越少,导致系统运行速度减慢,严重情况会使程序宕掉转载 2015-04-29 23:48:03 · 1260 阅读 · 0 评论 -
【ViewPager的学习】一、简单使用
ViewPager就不多介绍,主要用于手机引导页面、软件导航、轮播图片等情况。使用它需要引用一个库:android-support-v4.jar,add to build path。同ListView一样,它也需要设置Adapter管理数据。首先通过一个ViewPager使用的简单例子开始ViewPager的学习:<RelativeLayout xmlns:androi原创 2015-04-28 13:58:41 · 1091 阅读 · 0 评论 -
帮学长毕业设计总结:AChartEngine创建图表的步骤
1.AChartEngine首先要做的是一个用于展示支出、收入的饼状图,效果如下:之前没有接触过图表的绘制,经过实现这个功能了解并学习了AChartEngine,这是专门用于android绘制图表(饼状图、条形图)的工具库。目前最新的是achartengine-1.1.0.jar,下载地址:点击打开链接。具体配置步骤如下:(1)将下载得到的jar包粘贴到项目的libs文件夹原创 2015-04-27 00:32:16 · 2651 阅读 · 2 评论 -
【ViewPager的学习】三、实现自动循环切换
要实现效果如图:(一)实现循环滑动:(1)在MyAdapter中首先修改getCount()方法中的大小,让ViewPager可滑动页面增多。(2)instantiateItem()方法中将position对图片数组求余:position%imageList.size()(3)如果viewPager设置了OnPagerChangedListener方法,里面可能会有posi原创 2015-04-29 23:03:10 · 3496 阅读 · 10 评论 -
Android实现自定义AlertDialog的自下向上的动画效果(并消除dialog边框)
话不多说,直接上代码:AlertDialog.Builder builder = new Builder(HomeActivity.this); View view = View.inflate(HomeActivity.this, R.layout.home_add_dialog, null); btn_add_cancel = (Button) view.findViewB原创 2015-05-09 02:07:56 · 4802 阅读 · 0 评论 -
Android开发之使用VideoView实现视频的横屏播放、去除边框
做项目需要播放一个引导视频,本以为很简单,结果动手时发现总有瑕疵,幸好有度娘,现把收获总结如下:一、实现视频播放:注明我这里要播放的是Android项目中的资源文件,而不是访问SD卡播放视频。1.先把要播放的视频放到res/raw目录下2.视频格式必须是Android支持的格式(3gp,mp4,wmv),据说swf不支持,暂未试过。并且视频文件命名不能有大写字母,必须是小写字母、数原创 2015-05-09 14:14:35 · 14276 阅读 · 2 评论 -
Android取消EditText自带黄色边框
平时还没感觉,但是在做一些高逼格的应用时,发现系统自带的黄色边框很难看哎,比如说下面这个小搓比:哎呦,简直搓的不行。想要取消边框黄色只要一步:在你的EditText里添加一个属性:android:background="@null"duang!很清新有没有原创 2015-06-02 14:47:13 · 4041 阅读 · 0 评论 -
ScrollView+ListView滚动冲突,没有滑动效果 解决办法
问题背景今天做个界面需要在整个布局都要滚动的基础上添加一个ListView元素,整个布局滚动当然用ScrollView。但是在ScrollView+ListView的布局画好后,发现整个界面都无法滚动,而且ListView只显示了第一条元素。查看布局提示:The vertically scrolling ScrollView should not contain another vertical原创 2015-05-27 20:32:21 · 2741 阅读 · 0 评论 -
Android ANR产生原因和解决办法
ANR (Application Not Responding) ANR定义:在Android上,如果你的应用程序有一段时间响应不够灵敏,系统会向用户显示一个对话框,这个对话框称作应用程序无响应(ANR:Application Not Responding)对话框。用户可以选择“等待”而让程序继续运行,也可以选择“强制关闭”。所以一个流畅的合理的应用程序中不能出现anr,而让用户每次翻译 2015-04-17 01:25:08 · 1515 阅读 · 0 评论 -
Android UI性能优化实战 解决布局复杂导致的程序奔溃
转载请标明出处: http://blog.csdn.net/lmj623565791/article/details/45556391; 本文出自:【张鸿洋的博客】1、概述2015年初google发布了Android性能优化典范,发了16个小视频供大家欣赏,当时我也将其下载,通过微信公众号给大家推送了百度云的下载地址(地址在文末,ps:欢迎大家订阅公众号),那么近期go转载 2015-06-22 22:29:34 · 3356 阅读 · 0 评论 -
Android进阶之路:记录下一阶段我要看的书
现在互联网的存在使人们一天获取的信息比过去人好多年获取的都多。但凡事都有利弊,大量的信息、太多的选择会让我这样的菜鸟太迷茫,总觉得什么都需要看,又不知道先从哪个看起。最近看到很多书籍都有助于我下阶段的Android学习,差一点全买了,但是看了看书架上好几本买来没怎么翻的书,掂量了下自己现在得水平,还是先把这阶段搞夯实了再买吧。下阶段要看的书记录如下,以供自己或者网友需要时查看:打造高质量Andro原创 2015-06-23 12:57:33 · 2753 阅读 · 0 评论 -
一次搞定【Activity生命周期】
Activity生命周期说难也不难,无非那么7个阶段,可是初学者总是搞不清楚怎么办?最好的方法就是跟着这个demo练习一次,亲手操作更易理解,一次搞定Activity生命周期!!新建个Activity,覆盖onCreate、onStart、onResume、onRestart、onPause、onStop、onDestory方法:public class MainActivity原创 2015-04-13 15:13:01 · 1587 阅读 · 0 评论 -
Android图片压缩质量参数Bitmap.Config RGB_565、 ARGB_8888的含义及用法
android中的大图片一般都要经过压缩才显示,不然容易发生oom,一般我们压缩的时候都只关注其尺寸方面的大小,其实除了尺寸之外,影响一个图片占用空间的还有其色彩细节。打开Android.graphics.Bitmap类里有一个内部类Bitmap.Config类,在Bitmap类里createBitmap(intwidth, int height, Bitmap.Config config转载 2015-06-04 13:23:38 · 7994 阅读 · 1 评论 -
代码中修改TextView的DrawableLeft图片
先把解决代码贴上来:Drawable weather = getResources().getDrawable(R.drawable.sunday); weather.setBounds(0, 0, weather.getMinimumWidth(), weather.getMinimumWidth()); tv_choose_weather.setCompoundD原创 2015-06-03 17:56:58 · 4893 阅读 · 0 评论 -
Android官方提供的屏幕适配的全部方法
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/8830286原文地址为:http://developer.android.com/training/multiscreen/screensizes.html本文将告诉你如何让你的应用程序支持各种不同屏幕大小,主要通过以下几种办法:让你的布局能充分的自适翻译 2015-06-24 12:25:01 · 1182 阅读 · 0 评论 -
一分钟了解:Android 数字签名
Android 数字签名在Android系统中,所有安装到系统的应用程序都必有一个数字证书,此数字证书用于标识应用程序的作者和在应用程序之间建立信任关系 Android系统要求每一个安装进系统的应用程序都是经过数字证书签名的,数字证书的私钥则保存在程序开发者的手中。Android将数字证书用来标识应用程序的作者和在应用程序之间建立信任关系,不是用来决定最终用户可以安装哪些应用程序。这个数字证原创 2015-06-24 12:41:27 · 1259 阅读 · 0 评论 -
面试问题之:Android中消息系统模型和Handler Looper
Android中消息系统模型和Handler Looper 作为Android中大量使用的Handler,结合Thread使其具有众多的使用形式和方法,让我一时感觉这个东西有些玄乎,不明所以然,这到底是一个什么样的存在呢?通过网上资料和源码的学习,这个Handler也差不多弄清楚了,现在总结下这个学习结果。 一 Handler作用和概念通过官方文档原创 2015-06-26 16:16:39 · 1263 阅读 · 0 评论 -
面试问题之:Android中ListView分页加载数据
熟悉Android的朋友们都知道,不管是微博客户端还是新闻客户端,都离不开列表组件,可以说列表组件是Android数据展现方面最重要的组件,我们今天就要讲一讲列表组件ListView加载数据的相关内容。通常来说,一个应用在展现大量数据时,不会将全部的可用数据都呈现给用户,因为这不管对于服务端还是客户端来说都是不小的压力,因此,很多应用都是采用分批次加载的形式来获取用户所需的数据。比如:微博客户端可原创 2015-06-26 16:17:55 · 1453 阅读 · 0 评论 -
Android实现首次点击返回键提示信息,第二次点击退出应用
要实现的效果如图:代码很简单,复写onKeyDown方法,监听到back键的点击就初始化一个时间变量,并给出一个toast。当接下来一定时间内(我这里取的是1.5秒)再次有点击事件时,退出应用。@Override public boolean onKeyDown(int keyCode, KeyEvent event) { if(keyCode == KeyEvent.KEY原创 2015-06-06 16:45:25 · 4532 阅读 · 3 评论 -
android的sd卡上创建目录不显示
在SD卡上创建目录通常代码如下:[java] view plaincopyprint?String dir=Environment.getExternalStorageDirectory()+"/sxkeji"; File mydir=null; mydir=new File(dir); if(!mydir.exists())原创 2015-06-07 13:01:14 · 2072 阅读 · 0 评论 -
Android动态控制手机屏幕方向
想要在应用中控制手机屏幕显示方向,可以在onCreate中用一句代码搞定: setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);手机屏幕的朝向有7个可选值,分别如下SCREEN_ORIENTATION_BEHIND //继承Activity堆栈中当前Activity下面的那个Activity的方向SCREEN_ORIENT原创 2015-06-07 13:43:36 · 2405 阅读 · 0 评论 -
Android开发:使用Intent打开电话、短信、邮箱、本地文件等系统应用程序整理大全
1. Intent open a picture file public: Java代码 Intent intent = new Intent("android.intent.action.VIEW"); intent.addCategory("android.intent.category.DEFAULT"); intent.addFlags原创 2015-06-11 17:25:06 · 8084 阅读 · 0 评论 -
ondraw() 和dispatchdraw()的区别
绘制VIew本身的内容,通过调用View.onDraw(canvas)函数实现绘制自己的孩子通过dispatchDraw(canvas)实现 View组件的绘制会调用draw(Canvas canvas)方法,draw过程中主要是先画Drawable背景,对 drawable调用setBounds()然后是draw(Canvas c)方法.有点注意的是背景drawable的实际原创 2015-08-07 19:07:41 · 1248 阅读 · 0 评论 -
使用LRU算法缓存图片
译文地址:http://blog.csdn.net/androidzhaoxiaogang/article/details/7910364在您的UI中显示单个图片是非常简单的,如果您需要一次显示很多图片就有点复杂了。在很多情况下(例如使用 ListView, GridView 或者 ViewPager控件),显示在屏幕上的图片以及即将显示在屏幕上的图片数量是非常大的(例如在图库翻译 2015-08-24 14:09:19 · 1070 阅读 · 0 评论 -
Android 5.0 API新增和改进
转自Android官网:点击打开链接API 级别:21Android 5.0 (LOLLIPOP) 为用户和应用开发者提供了新的功能。本文档介绍了最值得注意的新 API。有关新平台功能的扼要介绍,另请参阅 Android Lollipop 集锦。开始开发要构建 Android 5.0 版应用,您必须先下载 Android SDK,然后使用 SDK 管理器原创 2015-08-11 11:01:24 · 1325 阅读 · 0 评论 -
Android M 六大新特性
Android M六大新特性 软件权限管理 在Android M里,应用许可提示可以自定义了。它允许对应用的权限进行高度管理,比如应用能否使用位置、相机、麦克风、通讯录等,这些都可以开放给开发者和用户。 网页体验提升 新版的M对于Chrome的网页浏览体验进行了提升,它对登陆网站、存储密码、自动补全资料、多线程浏览网页的安全性进行了一些列的优化。原创 2015-08-11 18:07:44 · 1099 阅读 · 0 评论 -
Android SDK与API版本的对应关系
经常需要在AndroidManifest.xml中配置sdk号,比如:android:minSdkVersion=”4”,却老记不清SDK与API版本的对应关系,查找后总结如下,供以后查看:第一行为版本命名,一般都是甜点 第二行为SDK,也就是平常经常说的android版本 第三行为API版本,开发者经常用到 下面这段转自: http://www.cnblogs.com/hope250/ar原创 2015-05-23 00:21:24 · 4836 阅读 · 0 评论 -
Android应用开发:屏幕旋转时的非中断保存之setRetaineInstance
引言首先,要明确什么叫“非中断保存”。熟悉Fragment的开发人员都知道,Fragment是依附于Activity的。当Activity销毁时,Fragment会随之销毁。而当Activity配置发生改变(如屏幕旋转)时候,旧的Activity会被销毁,然后重新生成一个新屏幕旋转状态下的Activity,自然而然的Fragment也会随之销毁后重新生成,而新生成的Fragment中的各个原创 2015-08-27 11:39:17 · 1438 阅读 · 0 评论 -
aapt简介及常用命令
aapt即Android Asset Packaging Tool,在SDK的build-tools目录下。该工具可以查看,创建, 更新ZIP格式的文档附件(zip, jar, apk)。也可将资源文件编译成二进制文件,尽管你可能没有直接使用过aapt工具,但是build scripts和IDE插件会使用这个工具打包apk文件构成一个Android 应用程序。在使用aapt之前转载 2015-08-12 15:45:55 · 2114 阅读 · 0 评论