随笔分类 -  Android

摘要:计时的几种方法,在虚拟机中不会出现问题,但是在真机测试中,会遇到这样一种情况: 在手机进行休眠状态后,原来的睡60秒时间,大约变成了睡7分钟左右才再执行.这一直让我很不解,也没有发现代码上有什么问题.后来发现别人也遇到了类似的问题. 发现常见的应用中,如游戏,播放器以及控制灯光显示中,都会有这种情况,后来通过找了一个资料才知道如果要定时执行的话,要用AlarmManager,这是闹钟服务,Android手机中必须要保证AlarmManager的时钟跟真实时间同步的.所以在 Android手机休眠状态下,AlarmManager时间是不会变慢的. 以下介绍AlarmManager的基本使用.Al 阅读全文
posted @ 2012-10-29 18:38 water0504 阅读(2198) 评论(0) 推荐(0)
摘要:A PendingIntent itself is simply a reference to a token maintained by the system describing the original data used to retrieve it. This means that, even if its owning application’s process is killed, the PendingIntent itself will remain usable from other processes that have been given it. If the cre 阅读全文
posted @ 2012-10-29 18:33 water0504 阅读(212) 评论(0) 推荐(0)
摘要:需要配置的1.声明处理搜索的Activity<meta-data android:name="android.app.default_searchable" android:value=".OnSearchAppsList" />2.Activity定义<activity android:name=".OnSearchAppsList"android:configChanges="orientation|keyboardHidden|navigation"android:label="@ 阅读全文
posted @ 2012-10-20 16:10 water0504 阅读(504) 评论(0) 推荐(0)
摘要:SpannableStringTextView是用来显示文本的,有时需要给TextView中的个别字设置为超链接,或者设置个别字的颜色、字体等,那就需要用到Spannable对象,可以借助Spannable对象实现以上设置myTextView = (TextView) this.findViewById(R.id.myTextView); //创建一个 SpannableString对象 SpannableString sp = new SpannableString("这句话中有百度超链接,有高亮显示,这样,或者这样,还有斜体."); //设置超链接 ... 阅读全文
posted @ 2012-10-19 17:24 water0504 阅读(2236) 评论(0) 推荐(0)
摘要:在Android中TextView和EditText是用来显示文本的,有时需要给TextView中的个别字设置为超链接,或者设置个别字的颜色、字体等,那就需要用到Spannable对象,可以借助Spannable对象实现以上设置。废话少说,直接上代码:package com.qzhousoft.SpannableDemo.ui;import android.app.Activity;import android.graphics.Color;import android.os.Bundle;import android.text.Spannable;import android.text.Sp 阅读全文
posted @ 2012-10-19 17:12 water0504 阅读(1759) 评论(0) 推荐(0)
摘要:表格布局中每一行为一个TableRow对象,当然也可以是一个View对象。TableRow可以添加子控件,每添加个为一列。anroid:layout_column:控件在TableRow中所处的列android:layout_span:该控件所跨越的列数android:collapseColumns:将里面指定的列隐藏,若有多列需要隐藏,用逗号将列序号隔开。android:stretchColumns:设置指定的列为可伸展的列,该列会尽量伸展以填满所有可用的空间,若有多列需要设置为可伸展,需要用逗号隔开.示例:<TableLayout xmlns:android="http:/ 阅读全文
posted @ 2012-10-19 15:55 water0504 阅读(291) 评论(0) 推荐(0)
摘要:一:TableLayout是表格布局先上例子:定义一个xml布局文件tablelayout.xml:内容如下:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:l 阅读全文
posted @ 2012-10-19 15:52 water0504 阅读(856) 评论(0) 推荐(0)
摘要:Toast是Android中用来显示显示信息的一种机制,和Dialog不一样的是,Toast是没有焦点的,而且Toast显示的时间有限,过一定的时间就会自动消失。1.默认效果:代码:Toast.makeText(getApplicationContext(), "默认Toast样式",Toast.LENGTH_SHORT).show();2.自定义显示位置效果:代码:toast = Toast.makeText(getApplicationContext(),"自定义位置Toast", Toast.LENGTH_LONG);toast.setGravit 阅读全文
posted @ 2012-10-19 15:44 water0504 阅读(187) 评论(1) 推荐(0)
摘要:最近做listview和button都要改变Android原来控件的背景,在网上查找了一些资料不是很全,所以现在总结一下android的selector的用法。首先android的selector是在drawable/xxx.xml中配置的。先看一下listview中的状态:把下面的XML文件保存成你自己命名的.xml文件(比如list_item_bg.xml),在系统使用时根据ListView中的列表项的状态来使用相应的背景图片。drawable/list_item_bg.xml<?xml version="1.0" encoding="utf-8&quo 阅读全文
posted @ 2012-10-19 15:17 water0504 阅读(163) 评论(0) 推荐(0)
摘要:Inflater英文意思是膨胀,在Android中应该是扩展的意思吧。 LayoutInflater的作用类似于 findViewById(),不同点是LayoutInflater是用来找layout文件夹下的xml布局文件,并且实例化!而 findViewById()是找具体某一个xml下的具体 widget控件(如:Button,TextView等)。她可以有很多地方可以使用,如BaseAdapter的getView中,自定义Dialog中取得view中的组件widget等等。它的用法有2种:LayoutInflater inflater = LayoutInflater.from(thi 阅读全文
posted @ 2012-10-19 14:17 water0504 阅读(214) 评论(0) 推荐(0)
摘要:TelephonyManager telephonemanage = (TelephonyManager) getWindow() .getContext().getSystemService(Context.TELEPHONY_SERVICE); try { edit1.setText("MIEI: " + telephonemanage.getDeviceId() + "\n SimSSN " + telephonemanage.getSimSerialNumber() ... 阅读全文
posted @ 2012-08-30 22:34 water0504 阅读(347) 评论(0) 推荐(0)
摘要:android 获取sim卡运营商信息TelephonyManager tm = (TelephonyManager)Context.getSystemService(Context.TELEPHONY_SERVICE); TelephonyManager 的使用 TelephonyManager 提供设备上获取通讯服务信息的入口,应用程序使用这个类的方法来获取电话的服务商或者状态。程序也可以注册一个监听器来监听电话状态的改变。 不需要直接实例化这个类,使用Context.getSystemService(Context.TELEPHONY_SERVICE)来获取这个类的实例。注意:一些电话信 阅读全文
posted @ 2012-08-30 22:33 water0504 阅读(375) 评论(0) 推荐(0)
摘要:Android提供了很多Activity的生命周期方法,比如我们常用的onCreate、onPause、onResume等。这里主要介绍粗粒度的周期方法,诸如onPostCreate、onPostResume等这些细粒度的周期方法可以参考Android的API文档,在你需要更细层次的控制的时候可以使用这些细粒度的方法。粗粒度的周期方法有以下几个:onCreate()、onStart()、onResume()、onPause()、onStop()、onDestroy(),从名字上就可以看出来这些方法在什么时候执行。一个Activity在启动的时候会执行onCreate()->onStart 阅读全文
posted @ 2012-08-27 22:53 water0504 阅读(288) 评论(0) 推荐(0)
摘要:以下是在做项目时常用到的,我做了一下总结。1、EditText输入的文字为密码形式的设置(1)通过.xml里设置:把该EditText设为:android:password="true"// 以”.”形式显示文本(2)在代码里设置:通过设置EditText的setTransformationMethod()方法来实现隐藏密码或这显示密码。editText.setTransformationMethod(PasswordTransformationMethod.getInstance()); //设置密码为不可见。2、(1)EditText输入的文字为电话号码Android: 阅读全文
posted @ 2012-08-27 22:50 water0504 阅读(576) 评论(0) 推荐(0)
摘要:GestureDetector.OnGestureListener:用来通知普通的手势事件,该接口有如下六个回调函数:1. onDown(MotionEvent e):down事件;2. onSingleTapUp(MotionEvent e):一次点击up事件;3. onShowPress(MotionEvent e):down事件发生而move或则up还没发生前触发该事件;4. onLongPress(MotionEvent e):长按事件;5. onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY 阅读全文
posted @ 2012-08-19 18:19 water0504 阅读(218) 评论(0) 推荐(0)
摘要:1、屏幕切换指的是在同一个Activity内屏幕见的切换,最长见的情况就是在一个FrameLayout内有多个页面,比如一个系统设置页面;一个个性化设置页面。2、介绍ViewFilpper类ViewFlipperextends ViewAnimatorjava.lang.Object↳android.view.View↳android.view.ViewGroup↳android.widget.FrameLayout↳android.widget.ViewAnimator↳android.widget.ViewFlipperClass OverviewSimple ViewAnimator t 阅读全文
posted @ 2012-08-19 18:07 water0504 阅读(174) 评论(0) 推荐(0)
摘要:如果想在整个应用中使用全局变量,在java中一般是使用静态变量,public类型;而在android中如果使用这样的全局变量就不符合Android的框架架构,但是可以使用一种更优雅的方式就是使用Application context。 首先需要重写Application,主要重写里面的onCreate方法,就是创建的时候,初始化变量的值。然后在整个应用中的各个文件中就可以对该变量进行操作了。 启动Application时,系统会创建一个PID,即进程ID,所有的Activity就会在此进程上运行。那么我们在Application创建的时候初始化全局变量,同一个应用的所有Activity都可.. 阅读全文
posted @ 2012-08-19 15:09 water0504 阅读(496) 评论(2) 推荐(0)
摘要:新建一个Android工程,名字为SpinnerActy。修改layout下的main.xml,添加一个Textview和一个Spinner,文件内容如下:<?xml version="1.0" encoding=”utf-8″?> <LinearLayout android:id= "@+id/widget28" android:layout_width= "fill_parent" android:layout_height= "fill_parent" android:orientation 阅读全文
posted @ 2012-08-19 15:06 water0504 阅读(262) 评论(0) 推荐(0)
摘要:Android自定义View实现很简单继承View,重写构造函数、onDraw,(onMeasure)等函数。如果自定义的View需要有自定义的属性,需要在values下建立attrs.xml。在其中定义你的属性。在使用到自定义View的xml布局文件中需要加入xmlns:前缀="http://schemas.android.com/apk/res/你的自定义View所在的包路径".在使用自定义属性的时候,使用前缀:属性名,如my:textColor="#FFFFFFF"。实例:package demo.view.my; import android.c 阅读全文
posted @ 2012-08-19 11:12 water0504 阅读(141) 评论(0) 推荐(0)
摘要:这里用的是TableLayout布局的。先看效果图下面看下布局文件<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="# 阅读全文
posted @ 2012-08-16 08:35 water0504 阅读(810) 评论(0) 推荐(0)