- 浏览: 322689 次
- 性别:
- 来自: 武汉
最新评论
-
Mfeng:
Mfeng 写道评论竟然不能删除
java 实现文件/文件夹复制、剪切、删除 -
Mfeng:
评论竟然不能删除
java 实现文件/文件夹复制、剪切、删除 -
yizhesong:
如何更改回来?
android EditText设置不可写(转) -
zhb31415926:
写点有技术含量的,纯浪费时间的文章
ListView——ArrayAdapter -
somefuture:
龙哥IT 写道setTextView(int,String)? ...
Activity传递一个或者多个对象
文章列表
当用户有没有接到的电话的时候,Android顶部状态栏里就会出现一个小图标。提示用户有没有处理的快讯,当拖动状态栏时,可以查看这些快讯。Android给我们提供了NotificationManager来管理这个状态栏。可以很轻松的完成。
如果要添加一个Notification,可以按照以下几个步骤
1:获取NotificationManager:
NotificationManager m_NotificationManager=(NotificationManager)this.getSystemService(NOTIFICATION_SERVICE);2:定义一个Notificat ...
ID3V2.3
- 博客分类:
- android-Media
概述
每个ID3V2.3的标签都一个标签头和若干个标签帧或一个扩展标签头组成。关于曲目的信息如标题、作者等都存放在不同的标签帧中,扩展标签头和标签帧并不是必要的,但每个标签至少要有一个标签帧。标签头和标签帧一起顺序存放在MP3文件的首部。
标签头
在文件的首部顺序记录10个字节的ID3V2.3的头部。数据结构如下:
char Header[3]; /*必须为"ID3"否则认为标签不存在*/
char Ver; /*版本号;ID3V2.3就记录03,ID3V2.4就记录04*/
char Revision; /*副版本号;此版本记录为00*/
c ...
使用过 SQLite 数据库的童鞋对 Cursor 应该不陌生,如果你是搞.net 开发你大可以把Cursor理解成 Ado.net 中的数据集合。今天特地将它单独拿出来谈,加深自己和大家对Android 中使用 Cursor 的理解。
关于 Cursor
在你理解和使用 Android Cursor 的时候你必须先知道关于 Cursor 的几件事情:
Cursor 是每行的集合。
使用 moveToFirst() 定位第一行。
你必须知道每一列的名称。
你必须知道每一列的数据类型。
Cursor 是一个随机的数据源。
所有的数据都是通过下标取得。 ...
一、log4j配置文件基本含义说明
二、Log4j日志管理系统简单使用说明
三、配置Log4j
log4j配置文件详解
一:log4j配置文件基本含义说明
log4j.properties配置文件讲解如下:
# Set root logger level to DEBUG and its only appender to A1
#log4j中有五级logger
#FATAL 0
#ERROR 3
#WARN 4
#INFO 6
#DEBUG 7
配置根Logger,其语法为:
#log4j.rootLogger = [ level ] , appenderName, appen ...
java.lang.string.split
split 方法
将一个字符串分割为子字符串,然后将结果作为字符串数组返回。
stringObj.split([separator,[limit]])
stringObj
必选项。要被分解的 String 对象或文字。该对象不会被 split 方法修改。
separator
可选项。字符串或 正则表达式 对象,它标识了分隔字符串时使用的是一个还是多个字符。如果忽
略该选项,返回包含整个字符串的单一元素数组。
limit
可选项。该值用来限制返回数组中的元素个数。
说明:
split 方法的结果是一个字符串数组,在 stingObj 中每个 ...
Creating a Custom Dialog
(原文)
/**
如果需要一个自定义设计的dialog,你可以创建自己的layout。定义好layout后,传递root View对象或者leyout资源ID给setContentView(View)。
例如:
1、创建XML layout:
<LinearLayout xmlns:android="http://schemas.andro ...
(原文)
/**
Showing a progress bar
Creating a ProgressDialog
ProgressDialog是AlertDialog的子类,可以显示进度动画:用旋转的环表示进度未定义的task;用进度条表示定义了进度的task。这个dialog也可以提供按钮,比如下载过程中的取消按钮。
打开 ...
Inflater英文意思是膨胀,在android中应该是扩展的意思吧。
LayoutInflater的作用类似于 findViewById(),不同点是LayoutInflater是用来找layout文件夹下的xml布局文件,并且实例化!而 findViewById()是找具体某一个xml下的具体 widget控件(如:Button,TextView等)。
她可以有很多地方可以使用,如BaseAdapter的getView中,自定义Dialog中取得view中的组件widget等等。
它的用法有2种:
Java代码
LayoutInflater inflater = LayoutInflater ...
转过来的贴,不想动原文,划分了原文的模块!添加了代码和效果。在此为勒些共享技术的程序员表示由衷的感谢和诚挚的问候!
原帖:http://hi.baidu.com/leran0222/blog/item/b5395a4b908628fa83025c7e.html
(原文)
/**
用户可以继承Dialog类或者它的子类并且创建一个新的layout。
Showing a Dialog
Dialog总是作为一个Activity的一部分来创建和显示的。正常可以使用Activity的onCreateDialog(int)回调函数来创建Dialog。使用这个回调函数的时候,系统会自动管理每个dialo ...
要使用dom4j读写XML文档,需要先下载dom4j包,dom4j官方网站在 http://www.dom4j.org/
目前最新dom4j包下载地址:http://nchc.dl.sourceforge.net/sourceforge/dom4j/dom4j-1.6.1.zip
解开后有两个包,仅操作XML文档的话把dom4j-1.6.1.jar加入工程就可以了,如果需要使用XPath的话还需要加入包jaxen-1.1-beta-7.jar.
以下是相关操作:
一.Document对象相关
1.读取XML文件,获得document对象.
SAXReader reader ...
TCPEchoServer
package com.mz.xx.code.atest;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.net.SocketAddress;
public class TCPEchoServer {
private static final int BUFSIZE = 3 ...
package com.mz.xx.code;
import java.net.Inet4Address;
import java.net.Inet6Address;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.net.UnknownHostException;
import java.util.Enumeration;
public class InetAddressExample {
...
该类提供勒线程局部变量。这些变量不同与它们的普通对应物,因为访问一个变量(通过其get 或 set方法)的每个线程都是有自己的局部变量,它独立与变量的初始化副本。ThreadLocal实例通常是类中的私有静态字段,他们希望将状态与某一个线程(例如,用户ID或事务ID)相关联。
以上为书中内容,有点难懂。我理解为,案例一中定义的一个普通变量被所有线程所共享。而案例二中以ThreadLocal定义的变量则只存在与每一个单独线程
例 1.
package com.mz.xx.tb;
public class SerialNum1 {
private static in ...
Thread类中有封装stop()方法终止线程,在程序中,使用了停用的方法并不意味着程序不会被执行,它仍然起作用。由于缺点不过,不提长使用而已。
看一下终止线程的示例:
package com.mz.xx.tb;
public class Deprecation2 extends Thread{
boolean runnable = true;
void stopThread(){
runnable = false;
}
public void run() {
whil ...
package com.mz.xx.tb;
public class DeadLock implements Runnable {
private String o1 = "lock1";
private String o2 = "lock2";
private String waysName;
public DeadLock(String waysName) {
super();
this.waysName = waysNam ...