08 2012 档案
摘要:今天在做项目的时候用了自定义listview以及自定义的item、adapter。现在把其中需要注意的地方记录下来:1、item内如果有button等控件时,在监听listview的onitemclick事件时,焦点会被item内的button、imagebutton等控件抢走,从而导致在listview设置了onitemclick事件后不会被触发。解决方法是在初始化item的时候屏蔽掉其内部button等控件的焦点获取,具体方法可以在自定义item的根控件中调用:setDescendantFocusability(ViewGroup.FOCUS_BLOCK_DESCENDANTS); 这..
阅读全文
摘要:在处理插入时间类型的数据用这种方式 :INSERT INTO A(DAT) VALUES(TO_DATE(...)) 当值非空时,可以顺利进行,但是当传入的是空字符穿就有问题, 1.插入时间最小值0001-1-1 2.把这个字段设为可空如:insert into table(date) values(null)
阅读全文
摘要:1.请问在ORACLE中对于varchar2型, ' '(空字符串)是否等于NULL? 2.在ORACLE中假如一个varchar2型字段不允许为空,但是有默认值,向这个字段中插入NUll时系统是返回错误还是插入默认值?1.yes 2.如果你语句中插入null,会报错的。如果,你不在插入语句中没有对该列给值,它将使用默认值。查询NULL要用is null 而不是用=null如下面例子:update table1 set col1 = null; 等价于 update table1 set col1 = ' '; 而 select col1 fro...
阅读全文
摘要:Html标签大全<a></a> 超文本链接<a href="URL"></a> 创建超文本链接 ,其中的url为链接目标地址<a href="mailtEMAIL"></a> 创建自动发送电子邮件的链接<a name="name"></a> 创建位于文档内部的书签<a href="#name"></a> 创建指向位于文档内部书签的链接其他链接标记注解:target="..."决
阅读全文
摘要:1.varchar2把所有字符都占两字节处理(一般情况下),varchar只对汉字和全角等字符占两字节,数字,英文字符等都是一个字节;2.VARCHAR2把空串等同于null处理,而varchar仍按照空串处理;3.VARCHAR2字符要用几个字节存储,要看数据库使用的字符集,大部分情况下建议使用varchar2类型,可以保证更好的兼容性。
阅读全文
摘要:TelephonyManager telephonemanage = (TelephonyManager) getWindow() .getContext().getSystemService(Context.TELEPHONY_SERVICE); try { edit1.setText("MIEI: " + telephonemanage.getDeviceId() + "\n SimSSN " + telephonemanage.getSimSerialNumber() ...
阅读全文
摘要:android 获取sim卡运营商信息TelephonyManager tm = (TelephonyManager)Context.getSystemService(Context.TELEPHONY_SERVICE); TelephonyManager 的使用 TelephonyManager 提供设备上获取通讯服务信息的入口,应用程序使用这个类的方法来获取电话的服务商或者状态。程序也可以注册一个监听器来监听电话状态的改变。 不需要直接实例化这个类,使用Context.getSystemService(Context.TELEPHONY_SERVICE)来获取这个类的实例。注意:一些电话信
阅读全文
摘要:Android提供了很多Activity的生命周期方法,比如我们常用的onCreate、onPause、onResume等。这里主要介绍粗粒度的周期方法,诸如onPostCreate、onPostResume等这些细粒度的周期方法可以参考Android的API文档,在你需要更细层次的控制的时候可以使用这些细粒度的方法。粗粒度的周期方法有以下几个:onCreate()、onStart()、onResume()、onPause()、onStop()、onDestroy(),从名字上就可以看出来这些方法在什么时候执行。一个Activity在启动的时候会执行onCreate()->onStart
阅读全文
摘要:以下是在做项目时常用到的,我做了一下总结。1、EditText输入的文字为密码形式的设置(1)通过.xml里设置:把该EditText设为:android:password="true"// 以”.”形式显示文本(2)在代码里设置:通过设置EditText的setTransformationMethod()方法来实现隐藏密码或这显示密码。editText.setTransformationMethod(PasswordTransformationMethod.getInstance()); //设置密码为不可见。2、(1)EditText输入的文字为电话号码Android:
阅读全文
摘要:比如现在有N个activity a b c d ....如果在d上关闭activity aAn activity can be shut down by calling its finish() method. One activity can shut down another activity (one it started with startActivityForResult()) by calling finishActivity().在a里面设置一个静态的变量instance,初始化为this在D里面,a.instance.finish()如下面的例子:1.对于简单的两个Activ
阅读全文
摘要:很多朋友在Java开发中,使用Oracle数据库的时候,经常会碰到有ORA-01000: maximum open cursors exceeded.的错误。实际上,这个错误的原因,主要还是代码问题引起的。 ora-01000: maximum open cursors exceeded. 表示已经达到一个进程打开的最大游标数。 这样的错误很容易出现在Java代码中的主要原因是:Java代码在执行conn.createStatement()和conn.prepareStatement()的时候,实际上都是相当与在数据库中打开了一个cursor。尤其是,如果你的createStatement和p
阅读全文
摘要:大家都知道,正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例如字符a到z)以及特殊字符(元字符)组成的文字模式,它用以描述在查找文字主体时待匹配的一个或多个字符串。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。自从jdk1.4推出java.util.regex包,就为我们提供了很好的JAVA正则表达式应用平台。因为正则表达式是一个很庞杂的体系,所以我仅例举些入门的概念,更多的请参阅相关书籍及自行摸索。\反斜杠\t 间隔 ('\u0009')\n 换行 ('\u000A')\r 回车 ('\u000D
阅读全文
摘要:一) 用Oracle Exists替换DISTINCT: 当提交一个包含一对多表信息(比如部门表和雇员表)的查询时,避免在SELECT子句中使用DISTINCT。一般能够考虑用Oracle EXIST替换,Oracle Exists使查询更为迅速,因为RDBMS核心模块将在子查询的条件一旦满足后,立即返回结果。例子: SELECT DISTINCT DEPT_NO,DEPT_NAME FROM DEPT D,EMP E WHERE D.DEPT_NO = E.DEPT_NO;SELECT DEPT_NO,DEPT_NAME FROM DEPT D WHERE Exists(SELECT ‘X&
阅读全文
摘要:目前web2.0已经越来被人们认可,因为喜欢搞web开发的人员不得不硬着头皮去学习web2.0的标准,其中很重要的一条就是新的布局规则,div+css。以前基本上是用table布局的,这种传统的方式简单直观,但是这新的标准我学习起来时常找不到北。呵呵,就拿今天这个例子来说吧,很多朋友肯定也有我这种情况的,那我就从网上搜集一些例子出来,让个更多的人消除这种烦恼。 事例一: css中padding和margin的区别margin 外边距border 边框padding 内边距也就是说 设置margin 那么他所占据的空白地方会是在边框外面设置padding 他所占据的空白地方是在边框里面,图解一下
阅读全文
摘要: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
阅读全文
摘要: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
阅读全文
摘要:getResourceAsStream ()返回的是inputstreamgetResource()返回:URLClass.getResource("") 返回的是当前Class这个类所在包开始的为置Class.getResource("/") 返回的是classpath的位置getClassLoader().getResource("") 返回的是classpath的位置getClassLoader().getResource("/") 错误的!!=================================
阅读全文
摘要:本人最近在使用oracle的rownum实现分页显示的时候,对rownum做了进一步的分析和研究。现归纳如下,希望能给大家带来收获。 对于rownum来说它是oracle系统顺序分配为从查询返回的行的编号,返回的第一行分配的是1,第二行是2,依此类推,这个伪字段可以用于限制查询返回的总行数,而且rownum不能以任何表的名称作为前缀。举例说明:例如表:student(学生)表,表结构为:ID char(6) --学号name VARCHAR2(10) --姓名 create table student (ID char(6), name VARCHAR2(100));...
阅读全文
摘要:import java.text.DateFormat;import java.text.ParsePosition;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import java.util.GregorianCalendar;/** * 常用日历操作辅助类 * * @author steven 2010-08-10 * @email:qing.tan@iwode.com */public class CalendarUtil { private int week...
阅读全文
摘要:Calendar 与 Date 的转换:Calendar calendar = Calendar.getInstance();// 从一个 Calendar 对象中获取 Date 对象Date date = calendar.getTime();// 将 Date 对象反应到一个 Calendar 对象中,// 先获得一个实例,然后设置 Date 对象calendar.setTime(date);月份的起始值为0而不是1,所以要设置八月时,我们用7而不是8。calendar.set(Calendar.MONTH, 7);计算2000-01-01是星期几calendar.get(calendar
阅读全文
摘要:如果想在整个应用中使用全局变量,在java中一般是使用静态变量,public类型;而在android中如果使用这样的全局变量就不符合Android的框架架构,但是可以使用一种更优雅的方式就是使用Application context。 首先需要重写Application,主要重写里面的onCreate方法,就是创建的时候,初始化变量的值。然后在整个应用中的各个文件中就可以对该变量进行操作了。 启动Application时,系统会创建一个PID,即进程ID,所有的Activity就会在此进程上运行。那么我们在Application创建的时候初始化全局变量,同一个应用的所有Activity都可..
阅读全文
摘要:新建一个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
阅读全文
摘要:错误描述:用户请求取消当前操作错误原因: 1、脚本(asp、jsp、php,etc.)执行超时造成数据库端取消操作 2、客户端工具(sql*plus,etc.)中使用强行中断方法中止当前操作 3、oracle bug(具体的fix.id记不清了,参见metalink.oracle.com)解决方法: 1、延长脚本执行超时时间 2、查看数据库表是否有锁 3、fix bugsupdate是DML语句,在多个进程同时修改同一张表时,有锁死的可能,而select则没有这种可能。如果是公司的数据库,建议找DBA查看是否有其他用户的进程在修改case_rec这张表,并解锁。如果是个人的数据库则...
阅读全文
摘要:当使用'for update' 造成表锁住了.可以用DBA登陆按照下面步骤: 1.查看哪个表被锁: select b.owner,b.object_name,l.session_id,l.locked_modefrom v$locked_object l, dba_objects bwhere b.object_id=l.object_id; 2.查看被锁表的sid 和serial# : select t2.username,t2.sid,t2.serial#,t2.logon_time from v$locked_object t1,v$session t2 where t1
阅读全文
摘要:this:虽然回去的是当前的.class,但是Activity的class是继承的Context的class,所以可以获取到当前class的contextgetApplication():获取的是工程的Application,但是Application.class是继承于Context.class的,所以能够获取到Application的context的,而且它能够获得Application的主题资源文件等内容。getApplicationContext():获取的是Application的contextgetBaseContext():是获取当前Activity的context同时对getA
阅读全文
摘要:一般可以认为是"/"的作用等同于"\\"在java中路径一般用"/"windows中的路径一般用"\"linux、unix中的路径一般用"/"所以在java中写windows路径一般用"/"或将"\"转义一下,就成了"\\"。因为反斜杠"\",在配置文件路径时,由于它本身在java中有特殊意义,作为转义符而存在,所以具体意义上的反斜杠要两个.
阅读全文
摘要:<3天前 上传下载附件 (49.92 KB)3天前 上传下载附件 (61.42 KB)3天前 上传下载附件 (54.3 KB)3天前 上传下载附件 (47.39 KB)3天前 上传下载附件 (79.87 KB)3天前 上传下载附件 (79.79 KB)3天前 上传下载附件 (74.91 KB)3天前 上传下载附件 (61.69 KB)3天前 上传下载附件 (76.94 KB)3天前 上传下载附件 (87.81 KB)3天前 上传下载附件 (69.42 KB)3天前 上传下载附件 (121.32 KB)3天前 上传下载附件 (66.81 KB)3天前 上传下载附件 (67.48 KB)3天
阅读全文
摘要: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
阅读全文
摘要:(1) 在Android布局文<View android:layout_width="fill_parent" android:layout_height="1px" android:background="?android:attr/listDivider" /> 件layout中设置分割线:2) ListView有好几种风格的分隔线:设置方法:mListView.setDivider(getResources().getDrawable(android.R.drawable.alert_light_frame));关键
阅读全文
摘要:显示文本的组件--TextView (1)基本使用,显示文本 <!-- android:textColor-设置text文字的颜色 android:background-设置textView的背景--> <!-- android:padding-设置文字距TextView组件边缘的距离 android:layout_margin设置TextView组件距离相邻的其它组件的距离 --> 除了以上在xml文件中配置相关属性,还可以通过在代码中进行设置,部分具体方法如下,其它类似: A,设置背景 /*设置背景的三个方法 * 1--参数为颜色值 * 2--参数为Drawable
阅读全文
摘要:In revision 17 of the Android SDK Tools and of the Eclipse ADT plug-in, we have made a lot of improvements to the dependency management of Android projects.The first thing we changed was to align both the Ant-based build system and the Eclipse plug-in so that they behave the same.Projects have sourc
阅读全文
摘要:Jabber 是著名的即时通讯服务服务器,它是一个自由开源软件,能让用户自己架即时通讯服务器,可以在Internet上应用,也可以在局域网中应用。 XMPP(可扩展消息处理现场协议)是基于可扩展标记语言(XML)的协议,它用于即时消息(IM)以及在线现场探测。它在促进服务器之间的准即时操作。这个协议可能最终允许因特网用户向因特网上的其他任何人发送即时消息,即使其操作系统和浏览器不同。XMPP的技术来自于Jabber,其实它是 Jabber的核心协定,所以XMPP有时被误称为Jabber协议。Jabber是一个基于XMPP协议的IM应用,除Jabber之外,XMPP还支持很多应用。下面就是如何架
阅读全文
摘要:同事来问测试环境上的一个sequence.currval 为什么取不到当前值。我说你试试nextval就能取到了。metalink ORA-8002 When Selecting CURRVAL From Sequence [ID 1019173.102]文章中说到:Before you can access CURRVAL for a sequence, you must first initialize the sequence with NEXTVAL.下面做个小的实验:SQL> CREATE SEQUENCE t_sequence START WITH 1000;Sequence
阅读全文
摘要:J2SE 提供的最后一个批注是 @SuppressWarnings。该批注的作用是给编译器一条指令,告诉它对被批注的代码元素内部的某些警告保持静默。 一点背景:J2SE 5.0 为 Java 语言增加了几个新的特性,并且和它们一起增加了许多新的警告并承诺在将来增加更多的警告。您可以为 "javac" 增加 -Xlint 参数来控制是否报告这些警告(如上面的 @Deprecated 部分所示)。 默认情况下,Sun 编译器以简单的两行的形式输出警告。通过添加 -Xlint:keyword 标记(例如 -Xlint:finally),您可以获得关键字类型错误的完整说明。通过在关
阅读全文
摘要:周遭初学oracle的朋友经常会得到一个oracle的错误ORA-00937: 非单组分组函数而不知所措。其实前面我在介绍使用聚合函数中用group by来分组数据时特别说明了如果在select 列表项中除了包含聚合函数外,还包含了表的某些列,那么你将必须使用group by语句,否则语法通不过。如果这里的语法通不过就会出现上述“ORA-00937: 非单组分组函数”的错误。例如:SQL> select deptno,job,avg(sal)2 from emp3 ;select deptno,job,avg(sal)*ERROR 位于第 1 行:ORA-00937: 非单组分组函数其实
阅读全文
摘要:// 创建一个表CREATE TABLE Car(GUID NUMBER NOT NULL PRIMARY KEY,PhoneId Char(11) NOT NULL,UserName VarChar(20) NOT NULL);// 添加注释comment on table car is '定位信息用户表';Comment on column car.guid is '自增字段';Comment on column Car.PhoneId is '电话唯一标识';Comment on column Car.UserName is '用户
阅读全文
摘要:GUID(Global unique identifier)全局唯一标识符,它是由网卡上的标识数字(每个网卡都有唯一的标识号)以及 CPU 时钟的唯一数字生成的的一个 16 字节的二进制值。GUID 的格式为“xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”,其中每个 x 是 0-9 或 a-f 范围内的一个十六进制的数字。例如:76895313-839E-4E89-BAFC-B253BFF3173F世界上的任何两台计算机都不会生成重复的 GUID 值。GUID 主要用于在拥有多个节点、多台计算机的网络或系统中,分配必须具有唯一性的标识符。在 Windows 平台上,
阅读全文
摘要:本来这是很简单的函数,但在屡次忘记格式之后,决定还是翻译一遍以铭记在心。参考<<Oracle Database SQL Reference>>.关于nls可有取值,请注意视图sys.V_$NLS_VALID_VALUES一 ,TO_CHAR(NUMBER)1.1 格式图和简单说明本函数把参数N转为一个VARCHAR2类型的数值。N可以是NUMBER,BINARY_FLOAT,或者BINARY_DOUBLE。如果不带格式,那么函数会把N转换为足以表示N的VARCHAR2字符串。格式表参考:序号格式简例说明1,(逗号)'9999,999'逗号,一般以千分位出
阅读全文
摘要:我们写程序的时候经常要全屏显示或者不显示标题。比如我们做地图导航的时候就不要标题了,下面介绍三种方法来实现Android去掉标题。第一种:也一般入门的时候经常使用的一种方法在setContentView()方法的前面插入代码:requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题栏第二种:在AndroidManifest.xml文件中定义去掉整个应用的标题栏:<application android:icon="@drawable/icon" android:label="@string/app_name&q
阅读全文
摘要:现用了一tabhost,选中某选项时,会跟上一背景图,实现代码如下tab_indicator.xml<?xml version="1.0" encoding="UTF-8"?><selectorxmlns:android="http://schemas.android.com/apk/res/android"><itemandroid:state_focused="false"android:state_selected="false"android:state_p
阅读全文
摘要:最近为了解决某个bug,textview中内容过长的话自动换行,但是调用measureText函数时发现返回值很不准确,单位也不确定,是pixel还是dip,都不准。后来想起textview中有个内容过长加省略号的属性,即ellipsize,可以较偷懒地解决这个问题,哈哈~用法如下:在xml中android:ellipsize = "end" 省略号在结尾android:ellipsize = "start" 省略号在开头android:ellipsize = "middle" 省略号在中间android:ellipsize = &q
阅读全文
摘要:用eclipsepublic class Text { public static final void main(String args[]){ Connection con = null; try { //1,加载驱动程序 Class.forName("oracle.jdbc.driver.OracleDriver"); //2,连接字符串 String s = "jdbc:oracle:thin:@localhost:1521:shitou"; //3,获得数据库连接 con = DriverManager.getConnection(s,&quo
阅读全文
摘要:例子:将连接数据库相关Url、用户名、密码等相关连接数据内容保存到属性(properties)文件中。程序如下: DBUtil 类package com.util;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql
阅读全文
摘要:在TabHost的子Activity中startActivityForResult调用其他Activity时候遭遇到onActivityResult方法不响应的问题.解决办法如下:1.通过父Activity启动其他Activity;2.实现父Activity的onActivityResult方法,将该处接收到的请求转发给当前活动的子Activity;3.自定义一个转发接口用来实现第2步中的转发功能;4.子Activity中实现第3步接口中的方法用来接收返回信息;代码如下:1.通过父Activity启动其他ActivitygetParent().startActivityForResult(ne
阅读全文
摘要:现在向 a和b 表中插入值 a(ID1, name,sex) b(ID2,ID1,Fraction)ID1,ID2 同为自动增长 ID1 为b表的外键参照a表的ID1点击保存后同时插入1、先创建a和b表的序列CREATE SEQUENCE SEQ_A;CREATE SEQUENCE SEQ_B;2、插入A表并返回A表当前IDv_id1 number(20);insert into a (ID1,name,sex)values(SEQ_A.NEXTVAL,name_value,sex_value) return ID1 into v_id1;3、插入B表insert into b (ID2,ID
阅读全文
摘要:控制台抛出这个异常:java.sql.SQLException: ORA-00911: invalid character查了一下说是oracle字符集设置的问题。我将抛异常的SQL语句在控制台输出如下:select count(t.id) as onerowc,t.id as areatravelid ,b.id as airpotid from base_areatravel t inner join base_airpot b on b.areaid=t.id group by t.id ,b.id;以上是完完整整的输出结果,然后我将语句复制到PL/SQL中执行是完全可以的,没有任何异常
阅读全文
摘要:首先,我对这个问题做一个进一步的描述,问题是这样的:在oracle中有一个表id是自动增长的,插入一条记录后,我怎样能获取到这个id呢,前提是,这个表中只有id能唯一标识这一行,其他字段都不行,而自动增长的id我又不知道他是多少,如何得到这个id的值呢。首先我想到的是用max(rownum)获取,但是这个是不行的,因为这个表有多个人操作,也就是说我在添加一条记录的同时不能保证其他人是否也同时添加了几条记录,我无法保证表中我添加的这条记录是最新的,所以就得想别的办法。介绍一下sequence(序列),这个可以解决我所描述的这个问题。、首先要创建一个sequence: create sequenc
阅读全文
摘要:TO_DATE格式(以时间:2007-11-02 13:45:25为例)Year: yy two digits 两位年 显示值:07yyy three digits 三位年 显示值:007yyyy four digits 四位年 显示值:2007Month: mm number 两位月 显示值:11mon abbreviated 字符集表示 显示值:11月,若是英文版,显示nov month spelled out 字符集表示 显示值:11月,若是英文版,显示november Day: dd number 当月第几天 显示值:02ddd number 当年第几天 显示值:02dy abbrev
阅读全文
摘要:这里用的是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="#
阅读全文
摘要:某个地方少了个关键字,自己找找,我一般会遇到这种情况是由于我的关键字写错误啦,多检查一下就好了。
阅读全文
摘要:A SELECT list cannot include both a group function, such as AVG, COUNT, MAX, MIN, SUM, STDDEV, or VARIANCE, and an individual column expression, unless the individual column expression is included in a GROUP BY clause.Drop either the group function or the individual column expression from the SELECT
阅读全文
摘要:在开发中,我们经常使用到ListView这个控件。Android的API也提供了许多创建ListView适配器的快捷方式。例如ArrayAdapter、SimpleAdapter和SimpleCursorAdapter等。但你是否发现,如果采用这些系统自带的适配器,对于事件的响应只能局限在一个行单位。假设一行里面有一个按钮和一个图片控件,它们之间的响应操作是不一样的。若采用系统自带的适配器,就不能精确到每个控件的响应事件。这时,我们一般采取自定义适配器来实现这个比较精确地请求。ListView的创建,一般要具备两大元素:1)数据集,即要映射的字符串、图片信息之类。2)适配器,实现把要映射的字符
阅读全文
摘要:设置android:childDivider红色后,展开子级列表,整个二级列表都成红色背景把颜色写到xml作为资源再引用如果还是不行的话,就把二级列表的背景颜色设置一下,就OK啦。
阅读全文
摘要:在Android中可以使用字符串数组资源。 在资源文件中定义方式如下: < ?xml version="1.0" encoding="utf-8"?> < resources> < string-array name="sa"><item>兑换</item><item>积分排行</item><item>积分详情</item><item>我的兑换</item><item>规则通知</ite
阅读全文
摘要:int 是基本类型,直接存数值 integer是对象,用一个引用指向这个对象 1.Java 中的数据类型分为基本数据类型和复杂数据类型 int 是前者>>integer 是后者(也就是一个类) 2.初始化时>> int i =1; Integer i= new Integer(1);(要把integer 当做一个类看) int 是基本数据类型(面向过程留下的痕迹,不过是对java的有益补充) Integer 是一个类,是int的扩展,定义了很多的转换方法 类似的还有:float Float;double Double;string String等 举个例子:当需要往Ar
阅读全文
摘要:添加字段的语法:alter table tablename add (column datatype [default value][null/not null],….);修改字段的语法:alter table tablename modify (column datatype [default value][null/not null],….);删除字段的语法:alter table tablename drop (column);添加、修改、删除多列的话,用逗号隔开。使用alter table 来增加、删除和修改一个列的例子。创建表结构:create table test1(id varc
阅读全文
摘要:在Oracle中sequence就是所谓的序列号,每次取的时候它会自动增加,一般用在需要按序列号排序的地方。 1、Create Sequence 你首先要有create sequence或者create any sequence权限 Sql代码 CREATE SEQUENCE SEQ_EMP INCREMENT BY 1 -- 每次加几个 START WITH 1 -- 从1开始计数 NOMAXVALUE -- 不设置最大值 (MAXVALUE 99999999) NOCYCLE -- 一直累加,不循环 CACHE 10; --设置缓存CACHE个序列,如果系统DOWN掉了或...
阅读全文
摘要:1、创建表的同时创建主键约束(1)无命名 create table student ( studentid int primary key not null, studentname varchar(8), age int);(2)有命名 create table students ( studentid int , studentname varchar(8), age int, constraint yy primary key(studentid));2、删除表中已有的主键约束(1)无命名可用 SELECT * from user_cons_columns; 查找表中主键名称得stude
阅读全文
摘要:Oracle游标数错误解决ORA-00020: maximum number of processes (%s)今天在使用过程中,oracle突然挂掉,再次尝试启动提示:ORA-00020: maximum number of processes (%s) exceeded?网上查找了下,默认的游标数偏小,需要加大oracle最大游标数修改设定Oracle最大游标数 SQL> show parameter open_cursor NAME TYPE VALUE ---------------------------...
阅读全文
摘要:在主Activity中加入以下代码:@Override public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) { dialog(); return false; } return false; } protected void dialog() { AlertDial...
阅读全文
摘要:很多网友发现自己Android程序的标题栏TitleBar区域很单调,如果想个性化一些可以通过下面的方法来为自己软件的标题定制一个layout布局文件,比如浏览器的标题栏,它包含了网站的Favicon,自定义的进度条,和不确定的进度指示等等,实现的方法自己控制吧。下面代码在onCreate 中使用,同时顺序不要改变,否则将无法生效:requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); setContentView(R.layout.main); //软件activity的布局getWindow().setFeatureInt(Window...
阅读全文
摘要:错误: android.view.WindowManager$BadTokenException: Unable to add window -- token android.app.LocalActivityManager$LocalActivityRecord@435def20 is not valid; is your activity running? 发生环境: 在一个tabActivity里面嵌套一个tabAcitivity, 如果在子tabActivity里面显示AlertDialog的话,就会引发此错误。 解决方法: AlertDialog.Builder(xxx.this)
阅读全文
摘要:在ActivityGroup的sub activity中直接使用Spinner会遇到下面的异常信息:ERROR/AndroidRuntime(964): FATAL EXCEPTION: mainERROR/AndroidRuntime(964):android.view.WindowManager$BadTokenException: Unable to add window -- token android.app.LocalActivityManager$LocalActivityRecord@44f02d20 is not valid; is your activity runni..
阅读全文
摘要:在开发手机应用时,除了对API的掌握外,更重要的还是画面。对于画面,屏幕分辨率又是很重要的一个因素。 由于手机屏幕尺寸各不相同,在画面布局时就需要考虑这个问题。Android可以设置为随着窗口大小调整缩放比例,但即便如此,手机程序设计人员还是必须知道手机屏幕边界,以免布局变形。下面我们就讲一下,如何通过代码获取手机屏幕的分辨率,代码其实很简单,关键是android.util.DisplayMetrics这个类。该类记录了一些常用信息,如显示信息、大小、维度、字体等等。代码:@Override public void onCreate(Bundle savedInstanceState) {..
阅读全文
摘要:ExpandableListView是android中可以实现下拉list的一个控件,是一个垂直滚动的心事两个级别列表项手风琴试图,列表项是来自ExpandableListViewaAdapter,组可以单独展开。重要方法:expandGroup (int groupPos) ;//在分组列表视图中 展开一组,setSelectedGroup (int groupPosition) ;//设置选择指定的组。setSelectedChild (int groupPosition, int childPosition, boolean shouldExpandGroup);//设置选择指定的子项。
阅读全文
摘要:ExpandableListView是android中可以实现下拉list的一个控件,具体的实现方法如下:首先:在layout的xml文件中定义一个ExpandableListView< LinearLayout android:id ="@+id/linearLayout" android:layout_width ="fill_parent" android:layout_height ="fill_parent" androidrientation ="vertical" > < Exp..
阅读全文
摘要:假设:我这里有两个Activity:A和B,从A中向B中传递数据的时候采用的是Bundle封装数据,然后从A中跳转到B中,当B有需求将数据封装起来回传给A并跳转回A。那么A中接收数据时还要先判断Bundle是否为空,因为第一次访问A的时候(即B还没有回传的时候),Bundle是为空的,这样显然是比较麻烦的,不明智的做法。还好startActivityForResult来做跳转给了我们更好的解决办法。1.跳转的时候不是采用startActivity(intent) 这个方法,而是startActivityForResult(intent, 0)。 Intent intent=new Intent
阅读全文
摘要:在Android中startActivityForResult主要作用就是:A-Activity需要在B-Activtiy中执行一些数据操作,而B-Activity又要将,执行操作数据的结果返回给A-Activtiy//看效果//看代码package sn.len.actres;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import andr
阅读全文
摘要:import java.util.Date;public class JavaString { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub //char to string char a[] = {'g','o','o','d','.'}; String s = new String (a); //全部字符 System.out.println(s); String
阅读全文
摘要:import java.util.ArrayList; import java.util.List; import org.apache.commons.lang.StringUtils; import org.junit.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class TestString { private final Logger logger = LoggerFactory.getLogger(this.getClass()); @Test public vo...
阅读全文
摘要:android开发中经常会在setContentView(R.layout.XXX); 前设置requestWindowFeature(XXXX)。他的意思是需要软件全屏显示、自定义标题(使用按钮等控件)和其他的需求首先介绍一个重要方法那就是requestWindowFeature(featrueId),它的功能是启用窗体的扩展特性。参数是Window类中定义的常量。一、枚举常量1.DEFAULT_FEATURES:系统默认状态,一般不需要指定2.FEATURE_CONTEXT_MENU:启用ContextMenu,默认该项已启用,一般无需指定3.FEATURE_CUSTOM_TITLE:自定
阅读全文
摘要:从网上找了一圈 大致有两种方法方法一:XML代码<TabHost xmlns:android="http://schemas.android.com/apk/res/android" android:id="@android:id/tabhost" android:layout_width="fill_parent" android:layout_height="fill_parent"> <LinearLayout android:orientation="vertical"
阅读全文
摘要:在手机屏幕中,Tab也是比较常用的,通常和List结合,例如我们手机的通信录。下面是Tag的结构。TabHost是整个Tab的容器,包括两部分,TabWidget和FrameLayout。TabWidget就是每个tab的标签,FrameLayout则是tab内容。如果我们使用extends TabAcitivty,如同ListActivity,TabHost必须设置为@android:id/tabhostTabWidget必须设置android:id为@android:id/tabsFrameLayout需要设置android:id为@android:id/tabcontent例子一:基本的
阅读全文
摘要:import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.text.ParseException;import java.text.SimpleDateFormat;
阅读全文
摘要:android中获取屏幕的长于宽测试代码:// 获取屏幕密度(方法1) int screenWidth = getWindowManager().getDefaultDisplay().getWidth(); // 屏幕宽(像素,如:480px) int screenHeight = getWindowManager().getDefaultDisplay().getHeight(); // 屏幕高(像素,如:800p) Log.e(TAG + " getDefaultDisplay", "screenWidth=" + screenWidth + &q
阅读全文
摘要:px :是屏幕的像素点in :英寸mm :毫米pt :磅,1/72 英寸dp :一个基于density的抽象单位,如果一个160dpi的屏幕,1dp=1pxdip :等同于dpsp :同dp相似,但还会根据用户的字体大小偏好来缩放。建议使用sp作为文本的单位,其它用dipdip和px 的关系:QVGA: density=0.75; densityDpi=120; QVGA(240*320)HVGA: density=1.0; densityDpi=160; HVGA(320*480)VGA: density=1.0; densityDpi=160; V...
阅读全文
摘要:一.介绍ImageView用来显示任意图像图片,可以自己定义显示尺寸,显示颜色等等.二.XML属性android:adjustViewBounds 是否保持宽高比。需要与maxWidth、MaxHeight一起使用,单独使用没有效果。android:cropToPadding 是否截取指定区域用空白代替。单独设置无效果,需要与scrollY一起使用android:maxHeight 定义View的最大高度,需要与AdjustViewBounds一起使用,单独使用没有效果。如果想设置图片固定大小,又想保持图片宽高比,需要如下设置:1) 设置AdjustViewBounds为true;2) 设置m
阅读全文
摘要:如果是2.1.3之前的版本,用org.apache.struts2.dispatcher.FilterDispatcher,否则,用org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter。 从Struts2.1.3开始,将废弃ActionContextCleanUp过滤器,而在StrutsPrepareAndExecuteFilter过滤器中包含相应的功能。 三个初始化参数:1、config参数:指定要加载的配置文件。逗号分割。 2、actionPackages参数:指定Action类所在的包空间。逗号分割。
阅读全文
摘要:部分源码如下:dialog= ProgressDialog.show(this,"","加载数据,请稍等 …",true,true); //图片资源 String url = "http://www.kzwlg.com.cn:1080/Wlg_server2/"+bundle.getString("pic"); //得到可用的图片 getHttpBitmap(url);/** * 对图片进行大小缩放 * @param bm * @param newWidth * @para...
阅读全文
摘要:在我们平时做开发的过程中,总是会有布局要考虑,不光是大布局,像LinearLayout这样,小的如文字在View中的布局也影响到整体的美观,所以,在开发中要多多留意这些细节部分的布局,在Android中,文字居中很多人都不知道在哪里。包括很多Web开发人员也是,总以为是一个叫align的属性。我也不例外,不过借助百度搜索,我找到了解决方案,就把它存起来吧。以后可能又会忘记的。页面布局是LinearLayout里包一个TextView控件1.方法一:TextView设置android:gravity=”center”,同时TextView设置android:layout_width=”fill_
阅读全文
摘要:在android中有时候我们不需要用到本机的SQLite数据库提供数据,更多的时候是从网络上获取数据,那么Android怎么从服务器端获取数据呢?有很多种,归纳起来有一:基于Http协议获取数据方法。二:基于SAOP协议获取数据方法,三:忘了-------那么我们的这篇文章主要是将关于使用Http协议获取服务器端数据,这里我们采取的服务器端技术为java,框架为Struts2,或者可以有Servlet,又或者可直接从JSP页面中获取数据。那么,接下来我们便开始这一路程:首先:编写服务器端方法,我这里采用的MVC框架是Struts2,目的很单纯,就是为了以后做个完整的商业项目,技术配备为:and
阅读全文
摘要:什么是JSON JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于阅读和编写,同时也易于机器解析和生成,非常适合于服务器与客户端的交互。JSON采用与编程语言无关的文本格式,但是也使用了类C语言的习惯,这些特性使JSON成为理想的数据交换格式。和 XML 一样,JSON 也是基于纯文本的数据格式。由于 JSON 天生是为 JavaScript 准备的,因此,JSON 的数据格式非常简单,您可以用 JSON 传输一个简单的 String,Number,Boolean,也可以传输一个数组,或者一个复杂的 Object 对象。Json_lib可以方便的将
阅读全文
摘要:我们在平时做开发的时候,免不了会用到各种各样的对话框,相信有过其他平台开发经验的朋友都会知道,大部分的平台都只提供了几个最简单的实现,如果我们想实现自己特定需求的对话框,大家可能首先会想到,通过继承等方式,重写我们自己的对话框。当然,这也是不失为一个不错的解决方式,但是一般的情况却是这样,我们重写的对话框,也许只在一个特定的地方会用到,为了这一次的使用,而去创建一个新类,往往有点杀鸡用牛刀的感觉,甚至会对我们的程序增加不必要的复杂性,对于这种情形的对话框有没有更优雅的解决方案呢? 幸运的是,android提供了这种问题的解决方案,刚开始接触android的时候,我在做一个自定义对话框的时候,.
阅读全文
摘要:XMPP协议简介XMPP协议(Extensible Messaging and PresenceProtocol,可扩展消息处理现场协议)是一种基于XML的协议,目的是为了解决及时通信标准而提出来的,最早是在Jabber上实现的。它继承了在XML环境中灵活的发展性。因此,基于XMPP的应用具有超强的可扩展性。并且XML很易穿过防火墙,所以用XMPP构建的应用不易受到防火墙的阻碍。利用XMPP作为通用的传输机制,不同组织内的不同应用都可以进行有效的通信。这篇文章有基本的介绍,http://blog.csdn.net/xutaozero21/article/details/4873439IMIns
阅读全文
摘要:1:大体思路这种转换要用到java.text.SimpleDateFormat类字符串转换成日期类型:方法1:也是最简单的方法 Date date=new Date("2008-04-14");方法2:SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");//小写的mm表示的是分钟String dstr="2008-4-24";java.util.Date date=sdf.parse(dstr);日期转换成字符串:SimpleDateFormat sdf=new Simple
阅读全文
摘要:下面是LoginActivity类private static final String PREFS_NAME = "MyUserInfo";@Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.login); findViews(); ...
阅读全文
摘要:Looper用于封装了android线程中的消息循环,默认情况下一个线程是不存在消息循环(message loop)的,需要调用Looper.prepare()来给线程创建一个消息循环,调用Looper.loop()来使消息循环起作用,从消息队列里取消息,处理消息。注:写在Looper.loop()之后的代码不会被立即执行,当调用后mHandler.getLooper().quit()后,loop才会中止,其后的代码才能得以运行。Looper对象通过MessageQueue来存放消息和事件。一个线程只能有一个Looper,对应一个MessageQueue。以下是Android API中的一个典
阅读全文
摘要:不知道您有没有这样的体验,我们做了个程序,不想让用户一直点击返回键,不知不觉中退了出来。希望给用户一个更为有好的提示,留下那些其实并没有真的要退出的用户。好吧,今天我就来说说如何实现这一功能。首先明确一点,用户的一直点击的返回键,之后就会退出到桌面。那么,如何提示呢?很简单,在用户一顿返回键回到程序入口处(即程序的第一个 Activity)给用户一个提示,您再按可就退出程序啦?那么如何在程序入口处增加这个提示呢?明显,我们要侦听用户的点击返回键这一事件。怎样才能做 到侦听这一事件呢?代码如下:view plain@OverridepublicbooleanonKeyDown(intkeyCod
阅读全文
摘要:android ListView添加事件并获取选中项的值,ListView是一个经常用到的控件,ListView里面的每个子项Item可以使一个字符串,也可以是一个组合控件。main.xml代码如下:<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:
阅读全文
摘要:在android开发中ListView是比较常用的组件,它以列表的形式展示具体内容,并且能够根据数据的长度自适应显示。抽空把对ListView的使用做了整理,并写了个小例子,如下图。列表的显示需要三个元素:1.ListVeiw 用来展示列表的View。2.适配器用来把数据映射到ListView上的中介。3.数据具体的将被映射的字符串,图片,或者基本组件。根据列表的适配器类型,列表分为三种,ArrayAdapter,SimpleAdapter和SimpleCursorAdapter其中以ArrayAdapter最为简单,只能展示一行字。SimpleAdapter有最好的扩充性,可以自定义出各种效
阅读全文
摘要:1. 使用openfire源代码进行项目工程建立首先新建java Project , 选中“已有源码”之后点击next,eclipse会自动进行解析加载类包和jar包等一系列classpath配置,之后直接点finish,在workspace就出现一个新建立的工程了,我这边的工程名为openfire_src2. 缺少jar包的导入当然,完成上面一些步骤,你会发现,其实系统还是会报错的。因为openfire源码中没有包含coherence.jar和tangosol.jar包,这两个包在coherence3.3b版本中可以适用。(3.7版本的太先进,导入会发现有一些API找不到)将2个jar包导入
阅读全文
摘要:对于消息的提醒方式可以分为四种:固定窗口、弹出窗口、手机短信和Push信息。下面的针对于push信息的机制和技术实现向大家介绍一下。 首先,我们要知道什么是Push信息? 所谓信息推送,就是"web广播",是通过一定的技术标准或协议,在互联网上通过定期传送用户需要的信息来减少信息过载的一项新技术。推送技术通过自动传送信息给用户,来减少用于网络上搜索的时间。它根据用户的兴趣来搜索、过滤信息,并将其定期推给用户,帮助用户高效率地发掘有价值的信息。简单的来说,信息推送就是服务器端主动向客户端发送信息,客户端进行接收信息。如下图:使用推送信息的好处:1、节省用户的电池电量。2、你可
阅读全文
摘要:1。MINA 框架简介当客户首次访问采用MINA编写的程序时,IoAcceptor作为线程运行,负责接受来自客户的请求。当有客户请求连接时,创建一个 Session,该Session与IoProcessor、SocketChannel以及IOService联系起来。IoProcessor也作为 另外一个线程运行,定时检查客户是否有数据到来,并对客户请求进行处理,依次调用在IOService注册的各个IoFilter,最后调用 IoHandler进行最终的逻辑处理,再将处理后的结果Filter后返回给客户端。2。IoSessionSession可以理解为服务器与客户端的特定连接,该连接由服务器地
阅读全文
摘要:1.引言 所谓的消息推送就是从服务器端向移动终端发送连接,传输一定的信息。比如一些新闻客户端,每隔一段时间收到一条或者多条通知,这就是从服务器端传来的推送消息;还比如常用的一些IM软件如微信、GTalk等,都具有服务器推送功能。 推送方法如下: 1)通过SMS进行服务器端和客户端的交流通信。 在Android平台上,你可以通过拦截SMS消息并且解析消息内容来了解服务器的意图,可以实现完全的实时操作。但是问题是这个方案的成本相对比较高,且依赖于运营商。 2)循环主动定时获取 这种方法需要客户端来做一个定时或者周期性的访问服务器端接口,以获得最新的消息。轮询的频率太慢可能导致某些消息的...
阅读全文
摘要:1.MINA框架简介 MINA(Multipurpose Infrastructure for Network Applications)是用于开发高性能和高可用性的网络应用程序的基础框架。通过使用MINA框架可以可以省下处理底层I/O和线程并发等复杂工作,开发人员能够把更多的精力投入到业务设计和开发当中。MINA框架的应用比较广泛,应用的开源项目有Apache Directory、AsyncWeb、Apache Qpid、QuickFIX/J、Openfire、SubEthaSTMP、red5等。MINA框架当前稳定版本是1.1.6,最新的2.0版本目前已经发布了M1版本。 MINA框架的特
阅读全文
摘要:昨天升级了SDK,ADT,发现原来可以在EditText里面使用电脑的键盘输入的功能,现在无法输入了,连模拟器的无力键盘也不行,只能使用虚拟键盘,非常麻烦,还有在baidu里有如下方法,只是在Create AVD的时候在Hardware这一项中添加keyboard supportkeyboard lid support: 模拟器物理键盘,设为yes,表示模拟器物理键盘可用keyboard support : 电脑键盘,设为yes,电脑键盘可用
阅读全文
摘要:刚才更新SDK, ADT,可是新建项目的时候却出现问题了,操作一路默认,出现了下面的提示:Thistemplate depends on the Android Support library, which is either not installed, or thetemplate depends on a more recent version than the one you hava installed.http://developer.android.com/tools/extras/support-library.htmlRequired version: 8Installed
阅读全文
摘要:由于项目需要做一个基于XMPP协议的Android通讯软件。故开始研究XMPPXMPP协议采用的是客户端-服务器架构,所有从一个客户端发到另一个客户端的消息和数据都必须经过XMPP服务器转发,而且支持服务器间DNS的路由,也就是说可以构建服务器集群,使不同的服务器下的客户端也可以通信,XMPP的前身是一个开源组织制定的网络通信协议——Jabber,XMPP的核心是在网络上分片段发送XML流的协议,这个协议是XMPP的即时通讯指令的传递手段。 为了防止服务器间发送的数据被篡改或偷听,XMPP服务器通信引入了TLS机制,使用TLS机制能实现数据的加密,从而保证了在数据传输过程种数据的安全。 一个X
阅读全文
摘要:1.导出整个数据库mysqldump -u 用户名 -p --default-character-set=latin1 数据库名 > 导出的文件名(数据库默认编码是latin1)mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql2.导出一个表mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql3.导出一个数据库结构mysqldump -u wcnc -p -d –add-drop-table smg
阅读全文

浙公网安备 33010602011771号