自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(133)
  • 资源 (3)
  • 问答 (1)
  • 收藏
  • 关注

转载 一个Android Socket的例子

1.开篇简介  Socket本质上就是Java封装了传输层上的TCP协议(注:UDP用的是DatagramSocket类)。要实现Socket的传输,需要构建客户端和服务器端。另外,传输的数据可以是字符串和字节。字符串传输主要用于简单的应用,比较复杂的应用(比如Java和C++进行通信),往往需要构建自己的应用层规则(类似于应用层协议),并用字节来传输。2.基于字符串传输的Sock

2014-09-18 14:57:19 491

转载 Android之线程池深度剖析

1.线程池的引入  引入的好处:  1)提升性能。创建和消耗对象费时费CPU资源  2)防止内存过度消耗。控制活动线程的数量,防止并发线程过多。  使用条件:     假设在一台服务器完成一项任务的时间为T     T1 创建线程的时间         T2 在线程中执行任务的时间,包括线程间同步所需时间         T3 线程销毁的时间          

2014-09-18 14:52:55 379

转载 AchartEngineActivity引擎绘制柱状图、曲线图

AchartEngineActivity引擎绘制柱状图、曲线图1.简介  AChartEngine(简称ACE)是Google的一个开源图表库(for Android)。它功能强大,支持散点图、折线图、饼图、气泡图、柱状图、短棒图、仪表图等多种图表。该项目地址位于: http://code.google.com/p/achartengine/。关于里面类的具体使用,请下载响应的文档说明

2014-09-18 14:37:01 466

转载 Android之TabHost布局

1.概念      盛放Tab的容器就是TabHost。TabHost的实现有两种方式:      第一种继承TabActivity,从TabActivity中用getTabHost()方法获取TabHost。各个Tab中的内容在布局文件中定义就行了。      第二种方式,不继承TabActivity,在布局文件中定义TabHost即可,但是TabWidget的id必须是

2014-09-18 14:26:45 376

转载 Android布局大全

Android的界面是有布局和组件协同完成的,布局好比是建筑里的框架,而组件则相当于建筑里的砖瓦。组件按照布局的要求依次排列,就组成了用户所看见的界面。            所有的布局方式都可以归类为ViewGroup的5个类别,即ViewGroup的5个直接子类。其它的一些布局都扩展自这5个类。1.LinearLayout,线性布局方式  这种布局比较常用,也比

2014-09-18 14:23:33 381

转载 Android中多层动态嵌套布局的实现

1.概念:在开发一些复杂界面,尤其是开发平板电脑页面时,界面布局往往比手机布局复杂很多。此时就需要用到嵌套布局。同时为了达到某种效果,需要局部的页面能够动态的变化,最典型的就是在一个页面中使用多个ViewPager。当这些ViewPager所在的页面也是动态变化的时候,就需要实现多层LinearLayout的嵌套。比如一个标签页面,头部是静态的,内容部分是动态变化的,同时每个内容中又需要动态变化,

2014-09-18 14:17:47 1719

转载 带视图缓存的动态布局

import android.app.Activity;import android.os.Bundle;import android.os.Handler;import android.os.Message;import android.util.Log;import android.view.LayoutInflater;import android.view.View;impo

2014-09-18 14:13:35 438

转载 Listview中显示不同的视图布局

1.使用场景  在重写ListView的BaseAdapter时,我们常常在getView()方法中复用convertView,以提高性能。convertView在Item为单一的同种类型布局时,能够回收并重用,但是多个Item布局类型不同时,convertView的回收和重用会出现问题。比如有些行为纯文本,有些行则是图文混排,这里纯文本行为一类布局,图文混排的行为第二类布局。单一类型的L

2014-09-18 14:09:40 489

转载 Android 相对布局属性

RelativeLayout布局 android:layout_marginTop="25dip" //顶部距离 android:gravity="left" //空间布局位置 android:layout_marginLeft="15dip //距离左边距 // 相对于给定ID控件 android:layout_above 将该控件的底部置于给定ID的控件之上; android

2014-09-18 13:59:49 469

转载 Android桌面快捷方式的实现

1)创建 /** * 为程序创建桌面快捷方式 */ private void addShortcut(){ Intent shortcut = new Intent("com.android.launcher.action.INSTALL_SHORTCUT"); //快捷方式的名称 shortcut.putExtra

2014-09-18 13:59:08 420

转载 Android之NDK开发

一、NDK产生的背景  Android平台从诞生起,就已经支持C、C++开发。众所周知,Android的SDK基于Java实现,这意味着基于Android SDK进行开发的第三方应用都必须使用Java语言。但这并不等同于“第三方应用只能使用Java”。在Android SDK首次发布时,Google就宣称其虚拟机Dalvik支持JNI编程方式,也就是第三方应用完全可以通过JNI调用自己的C

2014-09-18 13:54:22 440

转载 Android系统移植主要事项

Android系统的移植工作的目的是为了在特定的硬件上运行Android系统。在移植的过程中,把握关键要点,减少工作量是一个重要的方面。从工作的角度,通常的方法为,首先要熟悉硬件抽象层的接口,其次要集成和复用已有的驱动程序,主要的工作量在硬件抽象层的实现中。为了更好地理解和调试系统,也应该适当地了解上层对硬件抽象层的调用情况。  移植方面主要的工作有两个部分:  Linux驱动  An

2014-09-18 13:38:33 589

转载 Android工程的编译过程

现在很多人想对Android工程的编译和打包进行自动化,比如建立每日构建系统、自动生成发布文件等等。这些都需要我们对Android工程的编译和打包有一个深入的理解,至少要知道它的每一步都做了什么,需要什么环境和工具,输入和输出是什么。那么我们就来挖掘一下Android的编译过程中的细节。首先,我们假定你的系统(什么系统都行,不限于Linux还是Windows系统,当然,我在这里默认使用Li

2014-09-18 13:34:46 525

转载 Android的虚拟机Dalvik介绍

Dalvik和标准Java虚拟机(JVM)之间的首要差别之一,就是Dalvik基于寄存器,而JVM基于栈。一直以来都有人在猜测,选择基于寄存器的方式是因为它对提前优化(ahead-of-time optimization)提供了更好的支持,而这对类似于移动电话这样的受限环境是颇有裨益的。  Dalvik和Java之间的另外一大区别就是运行环境——Dalvik经过优化,允许在有限的内存中同时

2014-09-18 11:36:59 458

转载 Android多点触控技术

1 简介        Android多点触控在本质上需要LCD驱动和程序本身设计上支持,目前市面上HTC、Motorola和Samsung等知名厂商只要使用电容屏触控原理的手机均可以支持多点触控Multitouch技术,对于网页缩放、手势操作上有更好的用户体验。 在Android平台上事件均使用了MotionEvent对象方式处理,比如开始触控时会触发ACTION_DOWN,而移动操作时

2014-09-18 11:21:54 637

转载 Android:一个两点触控的案例

下面是一个两点触控的案例代码:package com.zzj;import android.app.Activity;import android.os.Bundle;import android.view.MotionEvent;public class AndroidTestActivity extends Activity { private float x0

2014-09-18 11:16:28 621

转载 Android的ADB工具使用

在SDK的Tools文件夹下包含着Android模拟器操作的重要命令ADB,ADB的全称为Android Debug Bridge,就是调试桥的作用,借助这个工具,我们可以管理设备或手机模拟器的状态 ,还可以进行以下的操作:(1)快速更新设备或手机模拟器中的代码,如应用或Android系统升级;(2)在设备上运行Shell命令;(3)管理设备或手机模拟器上的预定端口;(4)

2014-09-18 11:10:19 404

转载 Android模拟器adb命令介绍

在SDK的Tools文件夹下包含着Android模拟器操作的重要命令adb,adb的全称为Android Debug Bridge,就是调试桥的作用    在SDK的Tools文件夹下包含着Android模拟器操作的重要命令adb,adb的全称为Android Debug Bridge,就是调试桥的作用。通过adb我们可以在Eclipse中方面通过DDMS来调试Android程序,

2014-09-18 11:05:03 704

转载 Android调试工具之Traceview

Traceview是android平台配备的一个很好的性能分析工具。它可以通过图形化的方式让我们了解我们要跟踪的程序的性能,并且能具体到method。进行Traceview的版本限制对于Android 1.5及以下的版本:不支持。对于Android 1.5以上2.1下(含2.1)的版本:受限支持。trace文件只能生成到SD卡,且必须在程序中加入代码。对于Andro

2014-09-18 10:55:12 408

转载 Android 内存监测工具 DDMS --> Heap

用 Heap监测应用进程使用内存情况的步骤如下:  1. 启动eclipse后,切换到DDMS透视图,并确认Devices视图、Heap视图都是打开的;  2. 将手机通过USB链接至电脑,链接时需要确认手机是处于“USB调试”模式,而不是作为“Mass Storage”;  3. 链接成功后,在DDMS的Devices视图中将会显示手机设备的序列号,以及设备中正在运行的部分进程信息;

2014-09-18 10:51:01 503

转载 Android之单元测试学习

1.单元测试概念       单元测试(又称为模块测试),检验程序模块(软件设计的最小单位)正确性的测试工作,常常是程序员写的一段代码。对于面向对象编程,最小单元就是方法,包括基类(超类)、抽象类、或者派生类(子类)中的方法。  android中的测试框架是扩展的junit3,所以在学习android的单元测试之前,可以先学习junit3的使用.junit3要学习的东西其实也不多.

2014-09-18 10:47:51 587

转载 Android之菜单总结

在Android中,菜单被分为如下三种,选项菜单(OptionsMenu)、上下文菜单(ContextMenu)和子菜单(SubMenu)。 1. 选项菜单(OptionsMenu)详解      Activity中需要覆盖的常用的方法:  public boolean onCreateOptionsMenu(Menu menu):使用此方法创建OptionsMenu。该方

2014-09-18 10:43:09 435

转载 Android之解析XML

在Android平台上可以使用Simple API for XML(SAX) 、 Document Object Model(DOM)和Android附带的pull解析器解析XML文件。        下面是本例子要解析的XML文件:itcast.xmlxml version="1.0" encoding="UTF-8"?>persons>  person id="23">

2014-09-18 10:34:20 376

转载 Android之Widget学习总结

1.Widget设计步骤  需要修改三个XML,一个class:  1)第一个xml是布局XML文件(如:main.xml),是这个widget的。一般来说如果用这个部件显示时间,那就只在这个布局XML中声明一个textview就OK了。  2)第二个xml是widget_provider.xml,主要是用于声明一个appwidget的。其中,Layout就是指定上面那个mai

2014-09-18 10:32:34 454

转载 Android之View和SurfaceView

Android游戏当中主要的除了控制类外就是显示类View。SurfaceView是从View基类中派生出来的显示类。android游戏开发中常用的三种视图是:view、SurfaceView和GLSurfaceView。  View:显示视图,内置画布,提供图形绘制函数、触屏事件、按键事件函数等;必须在UI主线程内更新画面,速度较慢。  SurfaceView:基于view视图进行拓展的

2014-09-18 10:23:40 440

转载 Android之surfaceView使用总结

1.概念      SurfaceView是View类的子类,可以直接从内存或者DMA等硬件接口取得图像数据,是个非常重要的绘图视图。它的特性是:可以在主线程之外的线程中向屏幕绘图上。这样可以避免画图任务繁重的时候造成主线程阻塞,从而提高了程序的反应速度。在游戏开发中多用到SurfaceView,游戏中的背景、人物、动画等等尽量在画布canvas中画出。2.实现方法1)实现

2014-09-18 10:19:54 411

转载 Android之surfaceView实现视频播放

1.案例一布局文件:xml version="1.0" encoding="utf-8"?>LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" a

2014-09-18 10:17:29 491

转载 Android之VideoView和视频播放View的扩展

1.概念及扩展  VideoView 是android 系统提供的一个媒体播放显示和控制的控件。其结构层次如下:  原型:VideoView extends SurfaceView implements MediaController.MediaPlayerControl  类结构:      java.lang.Object        ↳ android.

2014-09-18 10:14:16 508

转载 Android: 利用SurfaceView绘制股票滑动直线解决延迟问题

1.背景介绍  最近项目要绘制股票走势图,并绘制能够跟随手指滑动的指示线(Indicator)来精确查看股票价格和日期。如下图所示:  上图中的那条白色直线就是股票的指示线,用来跟随手指精确确定股票的时间和股票价格。不论是绘制股票图还是绘制指示线,我们首先想到的就是用Android中的自定义View来实现。实践证明,使用View能够很好地实现静态的图片,但是对用动态图像的绘

2014-09-18 10:09:23 559

转载 Android SQLite学习指南

一、SQLite简介 在Android平台上,集成了一个嵌入式关系型数据库—SQLite,SQLite3支持 NULL、INTEGER、REAL(浮点数字)、TEXT(字符串文本)和BLOB(二进制对象)数据类型,虽然它支持的类型虽然只有五种,但实际上sqlite3也接受varchar(n)、char(n)、decimal(p,s) 等数据类型,只不过在运算或保存时会转成对应的五种

2014-09-18 10:01:54 468

转载 SQLite优化方法

1.建表优化SQLite的数据库本质文件读写操作,频繁操作打开和关闭是很耗时和浪费资源的; 优化方法事务机制:这里要注意一点:事务的开启是要锁定DB的,其他对DB的写入操作都是无法成功的。db.beginTransaction(); //手动设置开始事务try {//这里写你数据操作db.setTransactionSuccessfu

2014-09-18 09:53:15 461

转载 Android简单数据存储SharedPreferences

SharedPreferences是Android中存储简单数据的一个工具类。可以想象它是一个小小的Cookie,它通过用键值对的方式把简单数据类型(boolean、int、float、long和String)存储在应用程序的私有目录下(data/data/包名/shared_prefs/)自己定义的xml文件中。1)保存数据//获得SharedPreferences对象Sh

2014-09-18 09:44:26 402

转载 Android之SharedPrefernces权限

import android.app.Activity; import android.content.SharedPreferences; import android.os.Bundle; public class PermissionActivity extends Activity { private final int[] MODES=new int[]{

2014-09-18 09:41:31 798

转载 Activity与Service通信(同进程之间)

一、当Acitivity和Service处于同一个Application和进程时,通过继承Binder类来实现。     当一个Activity绑定到一个Service上时,它负责维护Service实例的引用,允许你对正在运行的Service进行一些方法调用。比如你后台有一个播放背景音乐的Service,这时就可以用这种方式来进行通信。代码如下:/***********

2014-09-18 09:36:08 658

转载 Activity与Service通信(不同进程之间)

使用Messenger   上面的方法只能在同一个进程里才能用,如果要与另外一个进程的Service进行通信,则可以用Messenger。    其实实现IPC(Inter-Process Communication,进程间通信)的方式,还有AIDL,但推荐使用Messenger,有两点好处:      1. 使用Messenger方式比使用AIDL的方式,实现起来要简单很

2014-09-18 09:31:44 554

转载 Android系统在新进程中启动自定义服务过程(startService)的原理分析

在编写Android应用程序时,我们一般将一些计算型的逻辑放在一个独立的进程来处理,这样主进程仍然可以流畅地响应界面事件,提高用户体验。Android系统为我们提供了一个Service类,我们可以实现一个以Service为基类的服务子类,在里面实现自己的计算型逻辑,然后在主进程通过startService函数来启动这个服务。在本文中,将详细分析主进程是如何通过startService函数来在新进程

2014-09-18 09:27:46 622

转载 Thread和Service应用场合的区别

Thread和Service的区别:1)Thread 是程序执行的最小单元,它是分配CPU的基本单位,可以用 Thread 来执行一些异步的操作。如果是Local Service,那么对应的 Service 是运行在主进程的 main 线程上的。如果是Remote Service,那么对应的 Service 则是运行在独立进程的main 线程上。因此 Service不是线程!

2014-09-18 09:05:18 455

转载 Android数据格式解析对象JSON用法

1.JSON概念:       一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性,从而可以在不同平台间进行数据交换。JSON采用兼容性很高的文本格式,同时也具备类似于C语言体系的行为。        JSON可以将Java对象转成json格式的字符串,可以将json字符串转换成Java。比XML更轻量级,Json使用起来比较轻便和简单。JSON数据格式,在Android

2014-09-18 08:57:27 396

转载 数据交换格式XML和JSON对比

1.简介:  XML:extensible markup language,一种类似于HTML的语言,他没有预先定义的标签,使用DTD(document type definition)文档类型定义来组织数据;格式统一,跨平台和语言,早已成为业界公认的标准。具体的可以问Google或百度。相比之JSON这种轻量级的数据交换格式,XML可以称为重量级的了。  JSON : JavaS

2014-09-18 08:52:25 530

转载 Android Handler的使用

大家好我们这一节讲的是Android Handler的使用,在讲Handler之前,我们先提个小问题,就是如何让程序5秒钟更新一下Title.首先我们看一下习惯了Java编程的人,在不知道Handler的用法之前是怎么样写的程序,代码如下所示:package com.android.tutor; import java.util.Time

2014-09-17 17:28:01 440

Android之library_PullToRefresh实现下拉刷新

博客地址:http://blog.csdn.net/anig2014/article/details/76269431

2017-07-28

Android之侧滑菜单

Android之侧滑菜单,博客地址:http://blog.csdn.net/anig2014/article/details/76020620

2017-07-24

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除