文章分类 - Android知识
Android知识
摘要:什么是 Git?Git 是一款免费的、开源的、分布式的版本控制系统。旨在快速高效地处理无论规模大小的任何软件工程。每一个 Git克隆 都是一个完整的文件库,含有全部历史记录和修订追踪能力,不依赖于网络连接或中心服务器。其最大特色就是“分支”及“合并”操作非常快速、简便。Git优势Git 最大的优势就是“快”!对于大型的联合开发项目,用 SVN 进行版本控制管理时速度很慢,但是用 Git 就快很多。Git还有最大的一个优势就是支持分布式开发。基本上SVN有的功能Git都有,并且毫不逊色。怎么使用Git使用git需要一个托管账户:注册地址。https://github.com/signup/fre
阅读全文
摘要:1、Android手机屏幕大小不一,有480x320, 640x360, 800x480.怎样才能让App自动适应不同的屏幕呢? drawable- hdpi、drawable- mdpi、drawable-ldpi的区别:(1)drawable-hdpi里面存放高分辨率的图片,如WVGA (480x800),FWVGA (480x854)(2)drawable-mdpi里面存放中等分辨率的图片,如HVGA (320x480)(3)drawable-ldpi里面存放低分辨率的图片,如QVGA (240x320) 测试的时候可以设定模拟器的分辨率知道了手机屏幕手机大小的分类以后,就开始着手设计自
阅读全文
摘要:做Android布局是件很享受的事,这得益于他良好的xml方式。使用xml可以快速有效的为软件定义界面。可是有时候我们总感觉官方定义的一些基本组件不够用,自定义组件就不可避免了。那么如何才能做到像官方提供的那些组件一样用xml来定义他的属性呢?现在我们就来讨论一下他的用法。1、添加文件attrs.xml,位于res\values目录下:1 2 3 4 5 6 7 2、创建自定义控件: 1 package com.szy.custom; 2 3 import com.szy.custom.R; 4 5 import andr...
阅读全文
摘要:注:LinearLayout中的TextView按比例显示的时候,layout_width="0dp"或者layout_height="0dp"在android开发中LinearLayout很常用,LinearLayout的内控件的android:layout_weight在某些场景显得非常重要,比如我们需要按比例显示。android并没用提供table这样的控件,虽然有TableLayout,但是它并非是我们想象中的像html里面的table那么好用,我们常用ListView实现table的效果,但是列对齐确比较麻烦,现在用LinearLayout及属
阅读全文
摘要:在Android的开发中,我们知道布局文件可以让我们很方便的对各个UI控件进行位置安排跟属性设置,而在程序中可以直接取得控件并赋予对应操作功能。但是,如果是一个复杂的界面设计,我们把所有布局都放在一个文件中来描述,那这个文件会显得比较臃肿而结构则变得无法清晰了。为此,Android为我们提供了一个武功高强的高手,这个高手的特异功能就是能够将几个不同的布局文件整合在一起,它的名字叫include,听名字就知道是包含的意思,当然是包括多个布局。说了那么多,其实使用并不难,而且还很简单,那接下来我们来举例来看看。由于是讲布局的安排跟组合,那我们这里就只拿布局文件来解析下,其他程序代码跟其他程序没区别
阅读全文
摘要:概述: AsyncTask是在Android SDK 1.5之后推出的一个方便编写后台线程与UI线程交互的辅助类。AsyncTask的内部实现是一个线程池,所有提交的异步任务都会在这个线程池中的工作线程内执行,当工作线程需要跟UI线程交互时,工作线程会通过向在UI线程创建的Handler传递消息的方式,调用相关的回调函数,从而实现UI界面的更新。AsyncTask抽象出后台线程运行的五个状态,分别是:1、准备运行,2、正在后台运行,3、进度更新,4、完成后台任务,5、取消任务,对于这五个阶段,AsyncTask提供了五个回调函数:1、准备运行:onPreExecute(),该回调函数在任务被执
阅读全文
摘要:我们在页面布局的时候,经常会设置容器的长度,但是到底该使用哪个作为长度的单位而懊恼。在Android中支持的描述大小区域的类型有以下几种: px(pixels)——像素:不同的设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较多。 dip(device independent pixels)——设备独立像素:这个和设备硬件有关,一般我们为了支持WCGA、HVGA和QVGA推荐使用这个,不依赖于像素。等同于dp。 sp(scaled pixels—best for text size)——主要用于字体显示best for textsize。由此,根据 google 的建议,T
阅读全文
摘要:http://www.92coding.com/blog/android资料http://www.cnblogs.com/aimeng/archive/2011/12/05/2277042.htmlandroid论坛http://www.apkbus.com/
阅读全文
摘要:某些情况下我们可能需要与Mysql或者Oracle数据库进行数据交互,有些朋友的第一反应就是直接在Android中加载驱动然后进行数据的增删改查。我个人不推荐这种做法,一是手机毕竟不是电脑,操作大量数据费时费电;二是流量贵如金那。我个人比较推荐的做法是使用Java或PHP等开发接口或者编写WebService进行数据库的增删该查,然后Android调用接口或者WebService进行数据的交互。本文就给大家讲解在Android中如何调用远程服务器端提供的WebService。既然是调用WebService,我们首先的搭建WebService服务器。为了便于操作,我们就使用网上免费的WebSer
阅读全文
摘要:本文将讨论Android应用程序的线程模型以及如何使用线程来处理耗时较长的操作,而不是在主线程中执行,保证用户界面(UI)的流畅运行。本文还将阐述一些用户界面(UI)中与线程交互的API。UI用户界面线程当应用程序启动时,系统会为应用程序创建一个主线程(main)或者叫UI线程,它负责分发事件到不同的组件,包括绘画事件。完成你的应用程序与Android UI组件交互。例如,当您触摸屏幕上的一个按钮时,UI线程会把触摸事件分发到组件上,更改状态并加入事件队列,UI线程会分发请求和通知到各个组件,完成相应的动作。单线程模型的性能是非常差的,除非你的应用程序相当的简单,特别是当所有的操作都在主线程中
阅读全文
摘要:本文给大家演示异步加载图片的分析过程。让大家了解异步加载图片的好处,以及如何更新UI。首先给出main.xml布局文件:简单来说就是 LinearLayout 布局,其下放了2个TextView和5个ImageView。 1 2 7 12 17 22 27 32 37 42 我们将演示的过程是异步从服务器上下载5张不同图片,依次放入这5个ImageView。上下2个TextView 是为了方便我们看是否阻塞了UI的显示。当然 AndroidManifest.xml 文件中要配置好网络访问权限。1 1)Handler+Runnable模...
阅读全文
摘要:之前曾介绍过Android的UI设计与后台线程交互,据Android API的介绍,service一般是在后台运行的,没有界面的。那么如何实现service动态更新UI界面呢?案例:通过service向远程服务器发送请求,根据服务器返回的结果动态更新主程序UI界面,主程序可实时关闭或重启服务。注册BroadcastReceiver在主程序activity中注册一个BroadcastReceiver,用于接收Service发布的广播。1 @Override2 protected void onStart()3 {// 重写onStart方法4 dataReceiver = new DataRe.
阅读全文
摘要:android.permission.ACCESS_CHECKIN_PROPERTIESAllows read/write access to the "properties" table in the checkin database, to change values that get uploaded允许读写访问 "properties"表在checkin数据库中,改值可以修改上传android.permission.ACCESS_COARSE_LOCATIONAllows an application to access coarse (e.g.
阅读全文
摘要:在实际开发中LayoutInflater这个类还是非常有用的,它的作用类似于findViewById()。不同点是LayoutInflater是用来找res/layout/下的xml布局文件,并且实例化;而findViewById()是找xml布局文件下的具体widget控件(如Button、TextView等)。具体作用:1、对于一个没有被载入或者想要动态载入的界面,都需要使用LayoutInflater.inflate()来载入;2、对于一个已经载入的界面,就可以使用Activiyt.findViewById()方法来获得其中的界面元素。LayoutInflater 是一个抽象类,在文档中
阅读全文
摘要:将别人的项目或JAVA文件导入到自己的Eclipse中时,常常会出现JAVA文件的中文注释变成乱码的情况,主要原因就是别人的IDE编码格式和自己的Eclipse编码格式不同。总结网上的建议和自己的体会,可以参考以下几种解决方式:1 改变整个文件类型的编码格式 1) eclipse->window->preferences->General->Content Types 2) 找到要修改的文件的类型(JAVA,JSP等等),在下面有个Default encoding,在输入框中输入GBK 3) 点击Update 4) 点击OK 5) 重启eclipse2 改变整个Ecli
阅读全文
摘要:AVD路径设置 前面提到,不管用Eclipse还是从命令行创建Android Emulator时,相应的文件是被放置到 “C:\Documents and Settings\Administrator\.android“ 下面。如果想改变AVD的路径设置,也有2个办法解决办法一: 新添加一个环境变量,名字为 "ANDROID_SDK_HOME”,然后把变量值改为你想将".android”文件夹(AVD信息)所放置的位置解决办法二: 修改配置文件中的路径,比如我的AVD名称是MyAVD, 打开 C:\Documents and Settings\Administrator\.
阅读全文
摘要:只需要配置一下hosts文件,在文件的末尾添加下面一句:74.125.237.1 dl-ssl.google.comwindows系统中hosts文件的位置为:C:\Windows\System32\drivers\etc ,找到该文件并已文本形式打开,添加上面一句话,保存之后关闭,重启Eclipse打开Android SDK Manager,ok!Ubuntu系统hosts文件的位置为:/etc/hosts,可以通过命令: sudo gedit /etc/hosts对该文件进行编辑
阅读全文
摘要:【问题原因】:工程中classpath中指向的包路径错误【解决办法】:右键项目名称 BuildPath ---> Configure Build Paht...中,然后上面有几个选项卡找到 Libraries中出现红色叉号的包为路径错误的包。到classpath中修改相应包的当前路径。然后回到eclipse中F5刷新工程。下面两段为我解决此问题时在网上找的参考资料,可参阅:你用myeclipse新建 web工程,在工程目录下会生成一个 .classpath 配置文件, 里面是你工程里面引用的jar的配置。这个.classpath 对你的web工程没有什么影响 其实是给 myeclipse
阅读全文
摘要:在存储文件时,为了保证有充足的存储空间大小,通常需要知道系统内部或者sdcard的剩余存储空间大小,这里就需要用到StatFs类。1. 判断 SDCard 是否存在,并且是否具有可读写权限 [java] view plaincopyprint?/** * 外部存储是否可用 (存在且具有读写权限) * @return */ staticpublicboolean isExternalStorageAvailable() { return Environment.getExternalStorageState().equals( Environment.MEDIA_MOUNTED); } ...
阅读全文
摘要:先在/res/drawable/目录下放一个叫icon.png的图标图片(48×48),并且在/res/values/strings.xml中定义app_name 修改你的程序名称节点工程的AndroidManifest.xml文件中添加不需要加文件扩展名
阅读全文