上一页 1 ··· 340 341 342 343 344 345 346 347 348 ··· 353 下一页
摘要: Looper用于封装了android线程中的消息循环,默认情况下一个线程是不存在消息循环(message loop)的,需要调用Looper.prepare()来给线程创建一个消息循环,调用Looper.loop()来使消息循环起作用,从消息队列里取消息,处理消息。 注:写在Looper.loop()之后的代码不会被立即执行,当调用后mHandler.getLooper().quit()后,loop才会中止,其后的代码才能得以运行。Looper对象通过MessageQueue来存放消息和事件。一个线程只能有一个Looper,对应一个MessageQueue。 以下是Android API中的. 阅读全文
posted @ 2013-11-24 18:47 brave-sailor 阅读(1169) 评论(0) 推荐(0) 编辑
摘要: Android中的Looper类,是用来封装消息循环和消息队列的一个类,用于在android线程中进行消息处理。handler其实可以看做是一个工具类,用来向消息队列中插入消息的。 (1) Looper类用来为一个线程开启一个消息循环。 默认情况下android中新诞生的线程是没有开启消息循环的。(主线程除外,主线程系统会自动为其创建Looper对象,开启消息循环。) Looper对象通过MessageQueue来存放消息和事件。一个线程只能有一个Looper,对应一个MessageQueue。(2) 通常是通过Handler对象来与Looper进行交互的。Handler可看做是Loop... 阅读全文
posted @ 2013-11-24 18:37 brave-sailor 阅读(363) 评论(0) 推荐(0) 编辑
摘要: 在java的线程Thread类中有三个方法,比较容易混淆,在这里解释一下 (1)interrupt:置线程的中断状态 (2)isInterrupt:线程是否中断 (3)interrupted:返回线程的上次的中断状态,并清除中断状态 举个例子:[java] view plaincopyprint?用法:classMyThreadextendsThread{............publicvoidrun(){try{while(!Thread.currentThread().isInterrupted()){//当达到队列容量时,在这里会阻塞//put的内部会调用LockSupport.pa 阅读全文
posted @ 2013-11-24 18:32 brave-sailor 阅读(1370) 评论(0) 推荐(0) 编辑
摘要: 首先介绍一下中断概念:举个例子容易理解一点例子:假如你正在给朋友写信,电话铃响了。这时,你放下手中的笔,去接电话。通话完毕,再继续写信。这个例子就表现了中断及其处理过程:电话铃声使你暂时中止当前的工作,而去处理更为急需处理的事情(接电话),把急需处理的事情处理完毕之后,再回头来继续原来的事情。在这个例子中,电话铃声称为“中断请求”,你暂停写信去接电话叫作“中断响应”,接电话的过程就是“中断处理”。interrupt:中断线程如果当前线程没有中断它自己(这在任何情况下都是允许的),则该线程的 checkAccess 方法就会被调用,这可能抛出 SecurityException。如果线程在调用 阅读全文
posted @ 2013-11-24 18:31 brave-sailor 阅读(632) 评论(0) 推荐(0) 编辑
摘要: 用到ExpandableListView时有个箭头图标系统自带的在你自定义布局也不能去掉只要设置一个属性即可,如下: settingLists.setGroupIndicator(null); ~~~~~~~~~~~~~~~~~此处就是设置自定义的箭头图标的。置空则没有了。也可以自定义(但是位置还是在那个地方不推荐)如下:首先,自定义一个expandablelistviewselector.xml文件,具体内容如下: Java代码 加一句代码如下:settingLists.setGroupIndicator(this.getResources().getDrawable(R.layout.ex 阅读全文
posted @ 2013-11-24 18:11 brave-sailor 阅读(417) 评论(0) 推荐(0) 编辑
摘要: 前言 本章内容是android.widget.ExpandableListAdapter,版本为Android 3.0 r1,翻译来自"深夜未眠",欢迎访问它的博客:"http://chirs1012f.javaeye.com/",再次感谢"深夜未眠" !期待你一起参与Android API的翻译,联系我over140@gmail.com。声明 欢迎转载,但请保留文章原始出处:) 博客园:http://www.cnblogs.com/ Android中文翻译组:http://goo.gl/6vJQl正文 一、结构public inte 阅读全文
posted @ 2013-11-23 18:04 brave-sailor 阅读(249) 评论(0) 推荐(0) 编辑
摘要: 当要设置一个闹钟时,可以把数据放在Intent里,再用intent对象生成一个PendingIntent对象,然后用AlarmManager 来邦定PendingIntent对象设置闹钟,具体代码如下:Intent intent = new Intent(context,AlarmReceiver.class);intent.putExtra("id", alarm.getId());intent.putExtra("weekday", getCurrentWeekday());PendingIntent pendingIntent = PendingI 阅读全文
posted @ 2013-11-20 14:44 brave-sailor 阅读(780) 评论(0) 推荐(0) 编辑
摘要: 当我们将Android升级功能的中的下载新版本apk文件存放在data/data/xxx.apk位置时,在有的些版本的手机中安装可能会出现安装包解析出错的问题,对于该问题的解决方案是提升该文件的权限。 代码: try { String command = "chmod 777 " + file.getAbsolutePath(); Runtime runtime = Runtime.getRuntime(); Process proc = runtime.exec(command); } catch (IOException e) { e.printStack... 阅读全文
posted @ 2013-11-19 11:07 brave-sailor 阅读(696) 评论(0) 推荐(0) 编辑
摘要: shape和selector是Android UI设计中经常用到的,比如我们要自定义一个圆角Button,点击Button有些效果的变化,就要用到shape和selector。可以这样说,shape和selector在美化控件中的作用是至关重要的。1.Shape简介作用:XML中定义的几何形状位置:res/drawable/文件的名称.xml使用的方法:Java代码中:R.drawable.文件的名称XML中:android:background="@drawable/文件的名称"属性:android:shape=["rectangle" | " 阅读全文
posted @ 2013-11-17 08:03 brave-sailor 阅读(329) 评论(0) 推荐(0) 编辑
摘要: ViewPager需要android-support-v4.jar这个包的支持,来自google提供的一个附加包。大家搜下即可。ViewPager主要用来组织一组数据,并且通过左右滑动的方式来展示。现在的大多数应用都会有一个欢迎引导页面,如图所示,通过左右滑动来告知用户一些功能特性。 这个引导图效果用ViewPager可以很轻松的实现。正如前面所说,ViewPager是用来展示一组数据的,所以肯定需要Adapter来绑定数据和view。先写一个Adapter:package com.notice.viewpagerd;import java.util.List;import android.. 阅读全文
posted @ 2013-11-13 15:01 brave-sailor 阅读(220) 评论(0) 推荐(0) 编辑
上一页 1 ··· 340 341 342 343 344 345 346 347 348 ··· 353 下一页