摘要: 系统对Activity是一种栈的管理,当我们调用finish方法的时候,系统的Activity栈就会自动pop掉该Activity。每次我们onCreate一个新的Activity的时候,相应的,也会自动push进去。有的时候,系统的Activity栈不能满足我们的操作,我们就需要自己写一个Activity管理类。public class ActivityManager { private static Stack<Activity> activityStack; private static ActivityManager instance; private Activit... 阅读全文
posted @ 2012-05-31 15:24 暗殇 阅读(389) 评论(0) 推荐(0)
摘要: 当我们下载完成Android系统源码后,我们需要通过Eclipse按F3查看相关源码。如何实现这个呢?第一步:用Eclipse新建一个Android Project;第二步:选中工程Project–>Properties–>选择Android,Project Build Target选中Android 2.3(根据自己下载的系统源码版本);第三部:点击左边的“Java Build Path”,切换到 Libraries 面板,展开 Android2.3 这个lib,点击android.jar的Source attachment,再点Edit.在对话框中点“External File 阅读全文
posted @ 2012-05-29 10:19 暗殇 阅读(257) 评论(0) 推荐(0)
摘要: 抽屉样式作为一种比较常用的View,有很多实现方式。这里是一种简单的实现方式:第一步:布局文件 <!-- android:content 要展开的layout content android:handle 委托要展开的图片 --> <SlidingDrawer android:id="@+id/sliding" android:layout_width="match_parent" android:layout_height="match_parent" android:content="@+id/allA 阅读全文
posted @ 2012-05-29 09:28 暗殇 阅读(886) 评论(0) 推荐(0)
摘要: 在Android开发过程中,很多情况下,我们需要通过Http协议获取服务端的数据接口。这里我们通过封装一个Http工具类: /** * 发送http请求 * @param urlPath 请求路径 * @param requestType 请求类型 * @param request 请求参数,如果没有参数,则为null * * @return */ public static String sendRequest(String urlPath, String requestType, String request,Strin... 阅读全文
posted @ 2012-05-28 10:03 暗殇 阅读(279) 评论(0) 推荐(0)
摘要: SharedPreferences是Android平台上一个轻量级的存储类,主要是保存一些常用的配置比如窗口状态,一般在Activity中重载窗口状态onSaveInstanceState保存一般使用SharedPreferences完成。它提供了Android平台常规的Long长 整形、Int整形、String字符串型的保存。SharedPreferences使用实例如下: public class PreferencesHelper { private Context context = null;//上下文 private String name = "... 阅读全文
posted @ 2012-05-24 11:19 暗殇 阅读(438) 评论(0) 推荐(0)
摘要: /** * @author gongchaobin * * 自定义popuwindow * @version 2012-12-12 */public class MyPopuWindow { private LayoutInflater mInflater; private PopupWindow mPopupWindow; private View mView; private Button mBtn; /** * @param context 上下文 * @param resId layout资源ID * @param width popuwindow的宽 * @param he... 阅读全文
posted @ 2012-05-23 15:12 暗殇 阅读(539) 评论(0) 推荐(0)
摘要: 作为三大解析XML方式之一,这里介绍的是SAX解析:第一步: try { //创建一个解析器的工厂 SAXParserFactory factory = SAXParserFactory.newInstance(); XMLReader xmlReader = factory.newSAXParser().getXMLReader(); //为XMLReader设置内容处理器 xmlReader.setContentHandler(new MyContentHandler... 阅读全文
posted @ 2012-05-17 23:19 暗殇 阅读(284) 评论(0) 推荐(0)
摘要: 这里主要讲解的是使用Google提供的Gson API解析Json数据。在使用Gson解析Json数据的过程中,首先我们要New一个实体类:/** * @author gongchaobin * * 书架上书本实体类 */public class ShelfBook implements Serializable{ private String title;//书本标题 private String size;//资源大小 private String picurl;//书本封面URL private String DataUrl;//数据下载地址 privat... 阅读全文
posted @ 2012-05-17 21:58 暗殇 阅读(682) 评论(0) 推荐(0)
摘要: Socket通信作为一种重要的数据交互方式,在Android开发过程也十分重要。//TCP Socket服务端 ServerSocket serverSocket = null; try { //4567 ServerSocket端口号 serverSocket = new ServerSocket(4567); //服务端接受客户端的Socket请求 Socket socket = serverSocket... 阅读全文
posted @ 2012-05-17 21:22 暗殇 阅读(441) 评论(0) 推荐(0)
摘要: 有的时候我们需要获取设备的尺寸以及密度,Android是提供了相应的API的 DisplayMetrics metric = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(metric); int width = metric.widthPixels; // 屏幕宽度(像素) int height = metric.heightPixels; // 屏幕高度(像素) float density = metric.densit... 阅读全文
posted @ 2012-05-10 16:22 暗殇 阅读(519) 评论(0) 推荐(0)
摘要: 现在的手机客户端一般是通过Json格式来传输数据,因为Json数据是轻量级的,便于传输。在通过HTTP拿到服务端返送的Json数据后,就会有一个解析的问题。解析的方式有很多种,比如说Google的Gson...这里只讲一种方法 /**解析JSON数据 * @param strJSON Json数据串 * @return HashMap键值对 * @throws JSONException */ public static HashMap<String, Object> parseJSON(String strJSON) throws J... 阅读全文
posted @ 2012-05-10 16:20 暗殇 阅读(277) 评论(0) 推荐(0)
摘要: DialogCommon.java:package com.easier.gallery.common;import com.easier.gallery.R;import android.R.integer;import android.app.AlertDialog;import android.content.Context;import android.content.DialogInterface;import android.graphics.Typeface;import android.os.Bundle;import android.view.LayoutInflater;i 阅读全文
posted @ 2012-05-10 16:20 暗殇 阅读(425) 评论(0) 推荐(0)
摘要: Android中获取用户的地理信息的方式有很多种,各有各得优点和缺点。这里主要介绍的方法是通过调用百度提供的地图API获取用户的地理位置信息。首要不可缺少的还是百度提供的标准Application类public class BMapApiApplication extends Application { public static BMapApiApplication mDemoApp; public static float mDensity; //百度MapAPI的管理类 public BMapManager mBMapMan = null;... 阅读全文
posted @ 2012-05-10 16:19 暗殇 阅读(2695) 评论(2) 推荐(1)
摘要: 系统自带的Menu有各种限制条件,如何设置Menu的背景和文字的各项属性呢?在不自定义的情况下,也是可以设置Menu的背景的。/** 设置Menu的背景图 */ protected void setMenuBackground() { this.getLayoutInflater().setFactory( new android.view.LayoutInflater.Factory() { public View onCreateView(String name, Context context,Att... 阅读全文
posted @ 2012-05-10 16:17 暗殇 阅读(2742) 评论(0) 推荐(0)
摘要: Android平台在2.2版本之后,系统提供了TrafficStats类来实现流量的统计。它是根据每个应用的UID来进行划分。/** *流量统计 */ private void FlowCount() { // TODO Auto-generated method stub AlertDialog.Builder builder = new AlertDialog.Builder(SettingActivity.this); builder.setTitle("流量使用情况:"); //Package... 阅读全文
posted @ 2012-05-10 16:15 暗殇 阅读(918) 评论(0) 推荐(0)
摘要: public class CustomToast { public static final int LENGTH_MAX = -1; private boolean mCanceled = true; private Handler mHandler; private Context mContext; private Toast mToast; public CustomToast(Context context) { this(context,new Handler()); } public CustomToa... 阅读全文
posted @ 2012-05-10 16:14 暗殇 阅读(1390) 评论(0) 推荐(0)
摘要: 手机上网的方式主要是GRPS/WIFI/WAP三种形式。有的时候,我们需要获取到当前上网的形式。这就需要使用到下面这个函数: /** * 判断联网状态及联网方式 * @param context 当前应用上下文 * @return NO_NETWORK 无可用网路; WIFI 通过wifi方式联网; GRPS 通过GPRS方式联网 * */ public static int theWayOfNetwork(Context context){ ConnectivityManager conn = (ConnectivityManage... 阅读全文
posted @ 2012-05-10 16:13 暗殇 阅读(370) 评论(0) 推荐(0)
摘要: 很多情况下,会有这么一种情况。就是ListView的子项中可能有Button或者ImageButton,如何使得ListView和Button/ImageButton共存呢?一般情况下,如果你不做处理,会产生互相屏蔽对方监听事件的情况。为了解决这个问题,首先你要在自定义的XML文件中把整个布局设为android:descendantFocusability= "blocksDescendants"然后把子项中的Button/ImageButton设置为android:focusable = "false"这样ListView和Button就可以共存,而B 阅读全文
posted @ 2012-05-10 16:12 暗殇 阅读(402) 评论(0) 推荐(0)
摘要: Android中为了实现一些特定的效应,必须使用重力感应,尤其是在游戏当中。在Android中管理重力感应的是SensorManager。@Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.main); mRegisterSensor = false;//控... 阅读全文
posted @ 2012-05-10 16:11 暗殇 阅读(237) 评论(0) 推荐(0)
摘要: 使用SOAP协议的前提是你必须下载一个KSOAP包:ksoap2-android-assembly-2.5.2-jar-with-dependencies.jar包然后操作的第一步:实例化SoapObject对象:1.serviceNameSpace 命令空间2.methodName 调用方法SoapObject request=new SoapObject(serviceNameSpace, methodName);第二步:设置SOAP请求信息(参数部分为SOAP协议版本号,与你要调用的webService中版本号一致)SoapSerializationEnvelope envelope = 阅读全文
posted @ 2012-05-10 16:10 暗殇 阅读(413) 评论(0) 推荐(0)