随笔分类 -  android提高篇

摘要:使用HttpClient连接服务端的步骤:1.创建HttpClient客户端对象HttpClient client = new DefaultHttpClient();2.创建请求对象 1.1 GET请求HttpUriRequest request = new HttpGet(String uri) HttpUriRequest request = new HttpGet(URI uri) 1.2 POST请求 1.2.1创建Post方法的请求对象 HttpUriRequest request = new HttpPost() HttpU... 阅读全文
posted @ 2013-08-17 01:50 brave-sailor 阅读(3103) 评论(0) 推荐(2)
摘要:本讲内容:URLConnection和HttpClient使用入门在 Android中除了使用WebView控件访问网络以外,还有用代码方式访问网络的方法,代码方式有时候会显得更加灵活。本讲会介绍使用 URLConnection对象和HttpClient组件访问网络的方法。而这两种方法和Java Web开发中的使用方式几乎没有区别,而Web开发的相关资料比比皆是,因此有兴趣的同学学完本讲之后可以专门去研究一下HttpClient4.0的内 容,以求更深入的学习。一、分别使用URLConnection和HttpClient访问Google天气服务的例子这个例子的的目的就是从Google哪里获取郑 阅读全文
posted @ 2013-08-17 01:48 brave-sailor 阅读(408) 评论(0) 推荐(0)
摘要:本讲内容:Android手机摄像头编程入门智能手机中的摄像头和普通手机中的摄像头最大的区别在于,智能机上的摄像头可以由程序员写程序控制, 做一些有趣的应用譬如,画中画,做一些有用的应用譬如二维码识别,等等。本讲打算通过一个实例,来介绍一下摄像头编程,相关解释都写在代码中了,请注意看 代码注释。 实例:窈窈照相机,功能很简单,就是点击程序弹出照相预览界面,点击相机按钮完成照相功能,所照相片会存储在手机存储卡根目录。 1、创建一个项目 Lesson36_Camera ,主程序文件为 MainActivity.java2、AndroidManifest.xml 中设置屏幕为横屏,并且声明摄像头和.. 阅读全文
posted @ 2013-08-15 17:03 brave-sailor 阅读(837) 评论(0) 推荐(0)
摘要:今天我们的教程是根据前面一节扩展进行的,如果你没有看,请点击 Android高手进阶教程(三)查看第三课,这样跟容易方便你的理解!在xml 文件里定义控件的属性,我们已经习惯了android:attrs="" ,那么我们能不能定义自己的属性能,比如:test:attrs="" 呢?答案是肯定的.好了我就不卖关子了,直接进入主题。大致以下步骤:一、 在res/values 文件下定义一个attrs.xml 文件.代码如下: 复制代码二、 我们在MyView.java 代码修改如下,其中下面的构造方法是重点,我们获取定义的属性我们R.sytleable.My 阅读全文
posted @ 2013-08-15 12:05 brave-sailor 阅读(327) 评论(0) 推荐(0)
摘要:大家好我们今天的教程是在Android 教程中自定义View 的学习,对于初学着来说,他们习惯了Android 传统的页面布局方式,如下代码:复制代码当然上面的布局方式可以帮助我们完成简单应用的开发了,但是如果你想写一个复杂的应用,这样就有点牵强了,大家不信可以下源码都研究看看,高手写的布局方式,如上面的布局高手通常是这样写的: 复制代码其中A extends LinerLayout, B extends TextView.为了帮助大家更容易理解,我写了一个简单的Demo ,具体步骤如下:首先新建一个Android 工程 命名为ViewDemo .然后自定义一个View 类,命名为MyV... 阅读全文
posted @ 2013-08-15 12:04 brave-sailor 阅读(364) 评论(0) 推荐(0)
摘要:在工作中又很多需求都不是android系统自带的控件可以达到效果的,内置的TabHost就是,只能达到简单的效果 ,所以这个时候就要自定义控件来达到效果:这个效果就是: 使用自定义RadioButton和ViewPager实现TabHost带滑动的页卡效果。 以下是实现步骤: 1、准备自定义RadioButton控件的样式图片等,就是准备配置文件: (1)、在项目的values文件夹里面创建 attrs.xml : (2)、创建 styles.xml: ... 阅读全文
posted @ 2013-08-15 09:45 brave-sailor 阅读(421) 评论(0) 推荐(0)
摘要:文 件上传在B/S应用中是一种十分常见的功能,那么在Android平台下是否可以实现像B/S那样的文件上传功能呢?答案是肯定的。下面是一个模拟网站程 序上传文件的例子。这里只写出了Android部分的代码,服务器的代码没有贴出来,有需要完整上传功能代码的朋友可以跟我联系哟…首先新建一个Android工程,新建主启动Activity:MainActivity.java:package com.xzq.upload;import java.io.DataOutputStream;import java.io.FileInputStream;import java.io.InputStream;im 阅读全文
posted @ 2013-08-15 09:39 brave-sailor 阅读(879) 评论(0) 推荐(0)
摘要:什么是Socket? 所谓Socket通常也称作“套接字”,用于描述IP地址和端口,是一个通信连的句柄,应用程序通常通过“套接字”向网络发送请求或者应答网络请求,它就是网络通信过程中端点的抽象表示。它主要包括以下两个协议: TCP (Transmission Control Protocol 传输控制协议):传输控制协议,提供的是面向连接、可靠的字节流服务。当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输 数据。TCP提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一端传到另一端。 UDP (User Datagram Protocl 用户... 阅读全文
posted @ 2013-08-15 09:29 brave-sailor 阅读(267) 评论(0) 推荐(0)
摘要:本示例介绍在Android平台下通过HTTP协议实现断点续传下载。 我们编写的是Andorid的HTTP协议多线程断点下载应用程序。直接使用单线程下载HTTP文件对我们来说是一件非常简单的事。那么,多线程断点需要什么功能?难在哪里? 1.多线程下载, 2.支持断点。 使用多线程的好处:使用多线程下载会提升文件下载的速度。那么多线程下载文件的过程是: (1)首先获得下载文件的长度,然后设置本地文件的长度。 HttpURLConnection.getContentLength();//获取下载文件的长度 RandomAccessFile file ... 阅读全文
posted @ 2013-08-15 09:26 brave-sailor 阅读(249) 评论(0) 推荐(0)
摘要:Java代码package com.android.cist.camera.view;import java.io.ByteArrayOutputStream;import java.io.InputStream;import java.util.HashMap;import java.util.Map;import android.app.Activity;import android.app.AlertDialog;import android.content.ContentResolver;import android.content.DialogInterface;import and 阅读全文
posted @ 2013-08-14 17:39 brave-sailor 阅读(357) 评论(0) 推荐(0)
摘要:引用转载http://www.cnblogs.com/eyu8874521/archive/2012/07/20/2600697.html效果:客服端代码:[java]view plaincopyprint?packagecom.cn.lxz.zhaopian;importjava.io.File;... 阅读全文
posted @ 2013-08-14 17:31 brave-sailor 阅读(602) 评论(0) 推荐(0)
摘要:Android没有像苹果开发那样功能强大的界面开发工具,本身 ADT插件提供的界面编辑能力有限,没办法刻画所有的界面情况;Android的界面xml代码可以进行人工修改,而Iphone的全部在图形界面上拖动 完成,可没提供任何方式的代码级修改。Android的UI设计开发过程非常繁琐,容易出错,需要很长时间调节界面细节,开发过Android应用的人肯 定深有同感。用几年前的网页设计来打个比方,开发Iphone的软件界面就好比是用Frontpage弄点控件拖成一张页面,而开发Android更接近 于闭着眼睛在Notepad里一行行的写html标签。为了使开发Android应用更加简便快捷,减少代 阅读全文
posted @ 2013-08-14 09:31 brave-sailor 阅读(797) 评论(0) 推荐(1)
摘要:android.app包中含有一个ActivityGroup类,该类是Activity的容器,可以包含多个嵌套进来的 Activitys,这篇文章就是借助ActivityGroup可以嵌套Activity的功能来实现Tab功能。tab这种UI在很多的移动应用中可 以看到,包括android、iphone、window phone7等移动终端上都有这样的应用,Tab这种UI方式具有小视图大容量的特点。 首先,从SDK中doc文档中都可以获知,ActivityGroup类的父类是Activity(见下图),也就是说二者具有相同的接口和生命周期,同Activity一样,也有onCreate()、.. 阅读全文
posted @ 2013-08-14 08:52 brave-sailor 阅读(252) 评论(0) 推荐(0)
摘要:Fragment是Android3.0后增加的新控件,有点类似于Activity组件,也是用来承载各种View元素。Google增加这个 玩意的目的是为了平板电脑里面可以复用部分显示的View,只要写好一个View,可以同时在手机和平板等不同尺寸的设备上使用。而且这个转换过程系统帮 你搞定了。下面我们分类说说Fragment的使用。1、为何使用Fragment 下面是Android官网为了说明Fragment作用的例子:一个新闻应用可以在屏幕左侧使用一个fragment来展示一个文章的列表,然后在屏幕 右侧使用另一个fragment来展示一篇文章--2个fragment并排显示在相同的一个.. 阅读全文
posted @ 2013-08-13 17:58 brave-sailor 阅读(362) 评论(0) 推荐(0)
摘要:1:注意事项3.0以前的Android 版本要使用FragmentActivity 来装载Fragment ,使用到support v4包。3.0以后的版本可以直接在Activity里面添加Fragment。2:Fragment也有生命周期,继承Fragment 要重新onCreateView方法,另外onResume,onDestroyView 等方法根据需要填写。3:在activity中加入Fragment有两种方法:布局和代码动态加入。布局加入和在布局加入view,button等用法一样。4:在Activity中动态加入Fragment google 教程http://developer 阅读全文
posted @ 2013-08-13 17:55 brave-sailor 阅读(316) 评论(0) 推荐(0)
摘要:首 先说下listview的优化方案,这也是面试中常考的题目。优化方案有三种:1,如果自定义适配器,那么在getView方法中判断 contentView是否为空,如果为空创建contentView并返回,如果不为空直接返回contentView。这样能尽可能少创建view。 2.给contentView设置tag,传入一个viewHoder对象,用于缓存要实现的数据。3,如果listview中显示的item太多,就要 考虑分页加载了。 下面就注意介绍一下分页加载数据。首先在layout下创建listview.xml: 然后创建listview_item.xml: 再为跟多... 阅读全文
posted @ 2013-08-13 12:59 brave-sailor 阅读(292) 评论(0) 推荐(0)
摘要:首先我们还是看一些示例:(网易,新浪,百度) 显示效果都不错,可是手感就不一样了,百度最棒,网易还行,新浪就操作很不好,这里我说的是滑动切换图片.自己可以测试一下.不得不说牛叉的公司确实有哦牛叉的道理.下面我简单的介绍下实现方法:其实就是listview addHeaderView.只不过这个view是一个可以切换图片的view,至于这个view怎么做,就要根据自己的喜爱了,实现有多种方法,下面我简单介绍一下.第一种:ViewFlipper+GestureDetector主布局就是一个listview,这里就不介绍了,我介绍下切换图片布局head_iamge.xml 这里... 阅读全文
posted @ 2013-08-13 11:57 brave-sailor 阅读(474) 评论(0) 推荐(0)
摘要:本文主要介绍如何利用ViewPager实现Gallery的画廊效果,即一屏显示多个Fragment。效果图如下: 在 使用Gallery的时候大家会发现有几个问题(1). 无法控制每次滑动只滑动一页, (2). Gallery默认第一个item居中,无法修改它与Gallery的左间距。ViewPager可以方便的解决上面两个问题,但默认却无法在屏幕上显示 多个Fragment。下面介绍如何利用ViewPager及android:clipChildren属性解决这个问题。1、定义xml 复制代码发现上面的RelativeLayout(可以用其它layout替换)和ViewPager的an... 阅读全文
posted @ 2013-08-13 11:50 brave-sailor 阅读(1077) 评论(0) 推荐(0)
摘要:相信大家对于微信等社交应用的UI界面已经都很熟悉了,该UI最值得借鉴的莫过于第一次使用的时候一些列产品介绍的图片,可以左右滑动浏览,最后 进入应用,这一效果适用于多种项目中,相信今后开发应用一定会用得到。网路上也有不少这样的例子可以参考,不过看别人的代码是一回事,自己实际做起来又是 另一回事,今天的这个微信的Demo是研究过多个类似的界面后自己动手去实现的效果,并且都加上了详细的注释(虽然有的多余),方便以后回顾一看就能看明 白,只有真正亲自写一写,体会才会更深刻,例子中的图片都是在微信的APK中提取出来的,涉及到的知识点无外乎是ViewPager和 Animation。 首先是开场闪屏的一个 阅读全文
posted @ 2013-08-13 11:48 brave-sailor 阅读(418) 评论(0) 推荐(0)
摘要:ViewPager需要android-support-v4.jar这个包的支持,来自google提供的一个附加包。大家搜下即可。ViewPager主要用来组织一组数据,并且通过左右滑动的方式来展示。现在的大多数应用都会有一个欢迎引导页面,如图所示,通过左右滑动来告知用户一些功能特性。这个引导图效果用ViewPager可以很轻松的实现。正如前面所说,ViewPager是用来展示一组数据的,所以肯定需要Adapter来绑定数据和view。先写一个Adapter:package com.notice.viewpagerd;import java.util.List;import android.os 阅读全文
posted @ 2013-08-13 11:02 brave-sailor 阅读(234) 评论(0) 推荐(0)