51CTO博客开发
大家都知道Handler是Android为了能在子线程更新UI所创作出来的一个类.那么为什么Handler能在handler里面能更新UI。是因为Handler 把更新UI的操作切换到了主线程来操作.有些博客说Handler是线程之间的一种通讯方式,这只局限于子线程跟主线程之间,那么子线程是怎么把消息传送到主线程来操作,这其中一个关键的地方就是Looper.从例子我们可以知道 假如现
公司的App启动速度太慢了要求提高启动速度,于是动手研究下把启动速度从2000ms降低到800ms左右。先记录下提速的方法application的Oncreate方法里面的逻辑代码全用new Handler().post(new Runnable());包裹Activity的Oncreate()方法如此;这种方法会把代码执行的时序全拖到onResumer之后3,然后在Oncreate onresu
1:由于天气apk接口不稳定所以经常获取不到信息。于是就动手写一个扒取天气网站上的数据然后做成json,apk直接调用服务器上扒取的数据增加稳定性。2:项目主要是用servlet然后正则表达式来提取网站信息。3:我觉得比较难得地方就是如何写正确的正则来提取出需要的信息,以下记录每个接口中需要的正则3.1获取页面省份的编号//page为需要提取信息的源信息public static Hashtabl
上一遍文章说到动态生成DIV后加上DWZ如何局部刷新因为局部刷新用到的div名称是从后台来取的,前台通过一个EL表达式&{flag}来取到。但是后台js中要拿到div的名称,原js中是写死的。function _getPagerForm($parent, args) {var form = $("#pagerForm", $parent).get(0); pagerForm是被写死的。if
修改的局部刷新Java代码 onsubmit="return validateCallback(this, dialogRefresh)" Java代码 function dialogRefresh(json){ DWZ.ajaxDo
项目用了DWZ,和SSH,当有同一账户在不同客户端登录时该如何在项目上做修改使得项目能结合DWZ弹出超时,跳转到登录页面呢,我是用了struts的拦截器先自定义一个拦截器,代码如下。先在开头定义一个hashmap这个hashmap的作用主要在于每次登录时记录登录的session,因为每个客户端登录过后的session是不一样的,所以在其他客户端有登录了同样的账号的时候,最先登录的那个客户端在执行其
当转换json中对象有外键时候可以参考一下方法把有外键的属性设为null;参考网上的方法。lazy=false; lazy=false还是不行?但是通过get方法能在控制台输出数据表明此对象已经被获得。那你应该看一下这个有外键的属性对象是否有其他外键。也就是转化 1有外键2,2有外键3。所以要把外键3一起找出来,或者把外键3设为null。那样就可以在转化对象1的时候把对象2一起转化成json了。
手机安全卫士是本人在自学安卓期间所做的一个项目,项目素材来自网上,通过观察金山手机卫士以及一些网上的资料做出来的,历时2个月。下面上图这个安全卫士所用到的技术(1)使用HTTPURLConnection连接Tomcat服务器,下载XML,通过解析辨别是否升级(2)运用SharedPreferences 和SQLite存储数据(3)缓存机制(4)使用基础框架(5)使用百度定位实现地理位置
FragmentTabHost我也不知道是什么,就是可用用来当新浪微博底部那个状态栏的工具。现在说下怎么使用首先activity要继承FragmentActivity例如 public class A extends FragmentActivity{//定义FragmentTabhostprivate FragmentTabhost tab;private TextView text;priva
异常一:Can't create handler inside thread that has not called Looper.prepare()这个异常是因为非主线程中默认没有创建对象。所以就要看看该方法所在的线程是不是主线程一看。真的不是。于是取消new Thread().start();搞定。问题1:@Overridepublic void onClick(DialogInterface
在android中常常会遇到与context有关的内容浅论一下context : 在语句 AlertDialog.Builder builder = new AlertDialog.Builder(this); 中,要求传递的 参数就是一个context,在这里我们传入的是this,那么这个this究竟指的是什么东东呢? 这里的this指的是Activity.this,是这个语句所在的Activi
Android图片处理(Matrix,ColorMatrix)在编程中有时候需要对图片做特殊的处理,比如将图片做出黑白的,或者老照片的效果,有时候还要对图片进行变换,以拉伸,扭曲等等。这些效果在android中有很好的支持,通过颜色矩阵(ColorMatrix)和坐标变换矩阵(Matrix)可以完美的做出上面的所说的效果。下面将分别介绍这两个矩阵的用法和相关的函数。颜色矩阵android中可以通过
作用: 1、对于一个没有被载入或者想要动态载入的界面, 都需要使用inflate来载入. 2、对于一个已经载入的Activity, 就可以使用实现了这个Activiyt的的findViewById方法来获得其中的界面元素. 方法: Android里面想要创建一个画面的时候, 初学一般都是新建一个类, 继承Activity基类, 然后在onCreate里面使用setContentView方法来载入
要点1 获取AndroidManifest.xml的版本号: 1.通过packageManager来获取 public void getVersion(Context context){ packageManger pm=context.getPackageManager();  
1 message msg=new message(); 和message msg=handler.obtainMessage();这两种方法哪种好,有什么区别。message msg=handler.obtainMessage();好。区别在于在整个Messge池中返回一个新的Message实例,在许多情况下使用它,因为它能避免分配新的对象,减少内存开销。
android:marqueeRepeatLimit="marquee_forever" //表示用不停止滚动 android:descendantFocusability="blocksDescendants"//表示屏蔽子控件获取焦点/这样父控件item就能获取焦点了。 android:fadingEdge="none"//设置拉动时边框减变的方向边框渐变的放向。none(边框颜色不变),h
GridView通过SimpleAdapter来实现那么如何定义初始样式。只有复写SimpleAdapter的getView方法 @Overridepublic View getView(int position, View convertView, ViewGroup parent) {// TODO Auto-generated method stub View view=supe
1 failed to lazily initialize a collection of role: com.gmako.entity.UserInfo.extendsUserInfos, no session or session was closed这是懒加载异常 配置文件设置lazy为false<set name="sysuser"" inverse="true" lazy-="f
1。SpringAOP是Spring框架的其中一个重点,AOP意为面向切面编程,是OOP面向对象的一个弥补。AOP主要作用于切面编程分为4个部分前置通知(Before advice):在某连接点之前执行的通知,但这个通知不能阻止连接点之前的执行流程(除非它抛出一个异常)。 后置通知(After returning advice):在某连接点正常完成后执行的通知:例如,一个方法没有抛出任何异常,正常
在前期已经讲过怎样分析自己,对自己进行一个准确的定位,选择一个合适的求职方向!并结合自己的实际个人情况来写一份针对性很强的个人简历!个人简历就是个人的广告!好的简历可以更受到用人需求单位青睐!好的简历才能让你获得面试的机会!我们还针对面试列出了j2ee方面的知识点!不管是笔试还是面试都是会考到这些非常重要的知识点!面试的技术内容并不会有想象中的那么难,主要注重基础和细节!细节决定一切!所以列罗的那
1。Spring的核心技术包括依赖注入DI 和控制反转 IOC 依赖注入就是各个bean之间相互依赖,所有容器的作用就是为各个bean注入依赖关系 依赖注入包括setter注入和构造器注入。 下面说说构造器注入 (1):构造器注入包括三种形式,分别是通过类型type.通过类.还有通过索引 通过类注入有时候会造成循环注入,也就是
Spring的DI 或者IOC就是把实例化过程放到application.XML文件配置1.依赖注入<bean name="z3" class="com.demo.Driver"><!--使用setter方法依赖注入 DI 反转注入IOC就是使用配置文件注入 --><property name="name" value="张三"></prope
1.国际化一般通过消息资源文件读取。globalMessages_en_US.properties 这个是英文globalMessages_zh_CN.properties 这个是中文 格式一定要正确.一般是通过匹配浏览器的语言设置2.那么如何在页面中使用国际化呢 (1):通过使用struts的标签<s:text name="i18n.title.key"/> (2):通过使用key字
1。struts2是原形的。Servlet是单例的2。拦截器1。自定义拦截器的话 首先要继承AbstractInterceptor接口 重写Interceptor方法public class MyInterceptor extends AbstractInterceptor {@Overridepublic String intercept(ActionInvocation arg0) throw
关于使用openssl生成证书。参考的http://zctya.blog.163.com/blog/static/1209178201251310292958/首先下载openssl 在openssl的bin目录下新建这四个目录1 ca 2 server 3 client 4 jks这四个目录主要用来运行命令后存放生成的文
1..简述我国科教兴贸战略的内涵与实施背景(1)..科技兴贸战略主要包括两个方面内容 1.大力推动高新技术产品出口,在我国优势战略领域培育一批国际竞争力强,附加值高,出口规模较大的高新技术产品和产业. 2. 运用高新技术成果改造传统出口产业,提高传统出口产品的技术含量和附加值。(2)实施"科技兴贸"战略的背景 1.国际高新技术产品贸易呈加速发展走势, &n
package org.xc.util;import java.io.BufferedInputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.sql.Connection;imp
$("#treatyId_"+i)[0].options[7] //select下的第7个option 是一个object$("#treatyId_"+i).append("<option port='' value='13'>IPMI</option>"); 加载一个option$("#treatyId_"+i+" option[value='13']").remove(
Jquery 多选下拉列表插件jquery multiselect 有一个多选的需求,在网上找到了这个插件:multiselecthttps://github.com/ehynds/jquery-ui-multiselect-widgetcsdn博客上有这个插件的介绍,不少童鞋都问了这么个问题,怎么获取选中的值?真是个好问题,因为我在看demo的时候也发现了这个问题,呵呵!先简单说说这个插件:jq
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号