http://www.cnblogs.com/bastard/archive/2012/06/08/2541944.html Android中消息系统模型和Handler Looper 作为Android中大量使用的Handler,结合Thread使其具有众多的使用形式和方法, 让我一时感觉这个东西有些玄乎,不明所以然,这到底是一个什么样的存在呢?通过网上 资料和源码的学习,这个Handler也差不多弄清楚了,现在总结下这个学习结果. 一 Handler作用和概念 通过官方文档了解到Handle…
概览   * Message:消息.消息里面可包含简单数据.Object和Bundle,还可以包含一个Runnable(实际上可看做回调). * MessageQueue:消息队列,供Looper线程消费消息. * Looper:用于循环处理Message,一个Thread结合一个Looper来实现消息循环处理.Android App的主线程包含了Looper. * Handler:负责向当前Looper线程发送Message,并实现如何处理消息的回调,回调可放到Callback接口的实现中,也…
android中调用系统拍照功能并显示拍照的图片 如果你是拍照完,利用onActivityResult获取data数据,把data数据转换成Bitmap数据,这样获取到的图片,是拍照的照片的缩略图 代码如下: package com.example.myphotos; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOExcept…
Version:0.9 StartHTML:-1 EndHTML:-1 StartFragment:00000099 EndFragment:00003259 Android中获取系统上安装的APP信息,并且提供卸载.区别用户应用和系统应用的小程序,供初学者参考. public class PakageInfoProvider { private static final String tag = "GetappinfoActivity"; private Context contex…
Android中调用系统所装的软件打开文件(转) 在应用中如何调用系统所装的软件打开一个文件,这是我们经常碰到的问题,下面是我所用到的一种方法,和大家一起分享一下! 这个是打开文件的一个方法: /** * 打开文件 * @param file */ private void openFile(File file){ Intent intent = new Intent(); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); //设置intent的Ac…
本节内容主要是讲解ActivityManager的使用,通过ActivityManager我们可以获得系统里正在运行的activities,包括 进程(Process)等.应用程序/包.服务(Service).任务(Task)信息. 计划如下:  第一部分:获取系统可用内存以及所有的正在运行的进程信息 ;                   第二部分:获取每个进程里运行的应用程序信息和所有正在运行的应用程序                   第三部分:获取正在运行的服务和任务信息. 每部分都准…
场景 进度条效果 注: 博客: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程序猿 获取编程相关电子书.教程推送与免费下载. 实现 将布局改为相对布局,然后添加一个ProgressBar,并添加id属性. 然后通过 android:max=" 设置进度条最大值 通过 android:layout_alignParentBottom="true" android:layout_marginBottom="50d…
//--------我的主布局文件------很简单---------------------------------<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" android:lay…
今天在维护公司的一个APP的时候,有如下场景. 弹出一个AlertDialog的时候,在系统语言是中文的时候,如下所示: 弹出一个AlertDialog的时候,在系统语言是English的时候,如下所示: 可以发现在系统语言为英语的时候,对话框中的白色文字已经完全看不清楚,对话框的背景颜色也变成了白色.因此需要修改对话框的主题. 修改之前代码如下: AlertDialog commedialog = new AlertDialog.Builder( WalkieTalkieActivity.th…
自定义一个Dialog,继承了系统Dialog的样式.这时候会发现,即使布局文件中写的width和height都是match_parent,依然无法达到全屏的效果. 原因是:系统dialog的样式.默认有padding=10dip,所以即使设置为全屏,也是有10dip的间隙. 如果不得不继承这个样式,还希望改变这个dialog的大小,我们可以尝试重写一个这个Dialog的show()方法. 分析:在Dialog的show()方法中,我们可以看到代码: 1 WindowManager.Layout…