- 浏览: 28311 次
- 性别:
- 来自: 广州
最新评论
-
a379933101:
哦,没看清,原来是缓冲中的呀
listView中多个listItem布局时 convertView缓存及使用(转) -
a379933101:
getItemViewType有必要用吗,getItemVie ...
listView中多个listItem布局时 convertView缓存及使用(转) -
慢跑学Android:
原来这个name后面不需要加.xml。网上看了一个关 ...
android: SharedPreference
文章列表
存储过程报错,找原因找了好久,以后是 ' 好的问题。结果发现是变量长度不够。不过对 ‘ 的应用有了新的理解。转发一篇关于 ' 应用的文章
1、 ' '是字符界定符,告诉SQL你输入的是字符,SQL已经知道@sitemtext是字符类型,所以不需要。 2、LIKE '%XXX% ' 可以拆分为 '% ' + 'XXX ' + '% ', 'XXX ' = @sitemtext。 3、EXEC执行字符串:@sitemtext对于EXEC来说变量,但对于EXEC内部的字串指令来说,它是常量,在运行EXEC之前,@sitemtext必然有个确定值(比如@ ...
严重: Exception starting filter struts2
Unable to load configuration. - [unknown location]
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:58)
at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:360)
at org.ap ...
<s:iterator id="list" value="cityList" status="sta">
<tr>
<td><s:property value="#sta.index"/></td>
<td>
<input type="text" name="cityList[<s:property value="#sta.index"/>].num" valu ...
android:随记
- 博客分类:
- android 基础
获取联系人信息:
Intent intent = new Intent(Intent.ACTION_PICK,ContactsContract.contacts.CONTENT_URI);
startActivityForResult(intent,1);
重写
onActivityResult(int requestCode,int resultCode,intent data){
if(requestCode==1){
if(resultCode==RESULT_OK){
contact = data.getData();
...
android上可以使用sqlite数据库,sqlite支持5中数据类型:null,INTEGER,REAL,TEXT,BLOB,可以在定义的时候使用varchar(n),char(n),decimal,但是在运输或者保存时会转换成5中基本类型。
可以保存任意类型的数据到任意 ...
SharedPreferece 可以用来保存配置文件,后缀名为.xml,是一个轻量级的存储类,文件放在/data/data/<package name>/shared_prefs目录下。通过键值对的形式保存。
可以通过Activity的getSharedPreference(name,mode);方法获取,name不需要加".xml",mode为创建模式:
Context.MODE_PRIVATE Context.MODE_APPEND Content.MODE_WORLE_READABLE Context.MODE_WORLD_WRI ...
简单工厂,工厂方法,抽象工厂都属于设计模式中的创建型模式。其主要功能都是帮助我们把对象的实例化部分抽取了出来,优化了系统的架构,并且增强了系统的扩展性。
本文是本人对这三种模式学习后的一个小结以及对他们之间的区别的理解。
简单工厂
简单工厂模式的工厂类一般是使用静态方法,通过接收的参数的不同来返回不同的对象实例。
不修改代码的话,是无法扩展的。
工厂方法
工厂方法是针对每一种产品提供一个工厂类。通过不同的工厂实例来创建不同的产品实例。
在同一等级结构中,支持增加任意产品。
android:handler(转)
- 博客分类:
- android 基础
Handler的定义:
主要接受子线程发送的数据, 并用此数据配合主线程更新UI. 解释: 当应用程序启动时,Android首先会开启一个主线程 (也就是UI线程) , 主线程为管理界面中的UI控件,进行事件分发, 比如 ...
最近有需求需要在listView中载入不同的listItem布局,开始没有使用convertView,加载了多个item后导致了内存泄露,所以回来研究convertView在多个listItem布局时的缓存及应用,并且和大家分享
构造Adapter时,没有使用缓存的 convertView,导致内存泄露
示例代码:public View getView(int position, View convertView, ViewGroup parent) { View view = new Xxx(...); ... ... return view;}
点击查看原网页
ListView是在Android很常見的一種視圖,ListView不論在電話簿中還是觀看大量的列表資料,都是會用得到。
ListView的使用需要搭配Adapter,Adapter是用來連接資料和ListView的,Adapter除了會用到ListView中,另外會用到還有Spinner(類似下拉選單)的這個元件中。在Google IO 2009的其中一張投影片中,可以很清楚的看到其中的關係圖:
获取手机的分辨率
- 博客分类:
- android 基础
DisplayMetrics dm;
dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
// 获得手机的宽带和高度像素单位为px
String str = "手机屏幕分辨率为:" + dm.widthPixels + " * "
+ dm.heightPixels;
问题描述:在用SVN上传文件时,报告Attempted to lock an already-locked dir错误; 解决方法:在项目上单击右键,选择team,再选择cleanup即可
frameset 重定向
- 博客分类:
- web
有些时候做一些系统的后台页面需要使用框架页。一般来说都是一个登录界面,然后登录成功后跳转到控制台页面,这个页面使用了frameset。这时候就存在一个session失效的问题,如果登录失效,那么就会在管理台页面的一个子页面中重新显示登录界面了,这个是我不想看到的。 解决方法是:可以在登录页面中加入以下js代码:
if (top.location != self.location){
top.location=self.location;
}
jdk自带md5加密
- 博客分类:
- java 基础
/**
* MD5加密类
* @param str 要加密的字符串
* @return 加密后的字符串
*/
public static String toMD5(String str){
try {
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(str.getBytes());
byte[]byteDigest = md.digest();
int i;
StringBuffer buf = new Stri ...