摘要:本文综合了:http://zhujiao.iteye.com/blog/1856980和http://blog.csdn.net/maikol/article/details/6048647两篇文章加入了自己的一些心得。Android的Margin和Padding跟Html的是一样的。如下图所示:黄...
阅读全文
摘要:在Android的layout样式定义中,可以使用xml文件方便的实现,有时候为了模块的复用,使用include标签可以达到此目的。例如: Android开发的官方网站的说明在这里。其中,有提到:Similarly, you can override all the layout parameter...
阅读全文
摘要:Android官方已经提供了Fragment的各种使用的Demo例子,在我们SDK下面的API Demo里面就包含了Fragment的各种使用例子,需要看Demo的朋友,直接看API Demo那个程序就可以了,不用到处去找。里面分开不同功能,实现了不同的类今天讲解一下Fragment的控制,主要是切...
阅读全文
摘要:很多时候,你可能会问,为什么要用 Service,而不用 Thread 呢,因为用 Thread 是很方便的,比起 Service 也方便多了,下面我详细的来解释一下。1). Thread:Thread 是程序执行的最小单元,它是分配CPU的基本单位。可以用 Thread 来执行一些异步的操作。2)...
阅读全文
摘要:介绍new Thread的弊端及Java四种线程池的使用,对Android同样适用。本文是基础篇,后面会分享下线程池一些高级功能。1、new Thread的弊端执行一个异步任务你还只是如下new Thread吗?Java1234567new Thread(new Runnable() { @Over...
阅读全文
摘要:线程概览线程是任何多任务系统的基石。可以被认为是一个主进程的多个子进程。这样做的目的就是了增加应用的性能。应用主线程当一个Android应用被打开的时候,系统会默认开辟一个线程。这个线程就被叫做是主线程。主线程的主要任务就是处理用户输入,即事件处理和view上的用户交互。任何应用里的其他组件,默认的...
阅读全文
摘要:1 RelativeLayout.LayoutParams linearParams = (RelativeLayout.LayoutParams)viewHolder.headerWraper.getLayoutParams(); 2 RelativeLayout.LayoutParams textParams = (RelativeLayout.LayoutParams)viewHolder.textWrapper.getLayoutParams(); 3 4 linearParams.addRule(RelativeLa...
阅读全文
摘要:转自:http://netsky1990.blog.51cto.com/2220666/997452在Android开发中常用到线性布局LinearLayout对界面进行具体的创建,其中android:layout_weight这个属性很重要,它可以按照程序员的控制,根据终端屏幕的大小,以相应的比例显示控件的大小,而不会把控件的大小写死,造成无法根据屏幕来自动调整控件本身的大小。需要注意以下几点:一、LinearLayout内的控件的layout_width设置为"wrap_content"例:android:layout_height="fill_parent&
阅读全文
摘要:一、Android的内存机制Android的程序由Java语言编写,所以Android的内存管理与Java的内存管理相似。程序员通过new为对象分配内存,所有对象在java堆内分配空间;然而对象的释放是由垃圾回收器来完成的。C/C++中的内存机制是“谁污染,谁治理”,java的就比较人性化了,给我们请了一个专门的清洁工(GC)。那么GC怎么能够确认某一个对象是不是已经被废弃了呢?Java采用了有向图的原理。Java将引用关系考虑为图的有向边,有向边从引用者指向引用对象。线程对象可以作为有向图的起始顶点,该图就是从起始顶点开始的一棵树,根顶点可以到达的对象都是有效对象,GC不会回收这些对象。如果
阅读全文
摘要:一:安装过程APK是类似Symbian Sis或Sisx的文件格式。通过将APK文件直接传到Android模拟器或Android手机中执行即可安装。Android应用安装有如下四种方式1. 系统应用安装――开机时完成,没有安装界面2. 网络下载应用安装――通过market应用完成,没有安装界面3. ADB工具安装――没有安装界面。4. 第三方应用安装――通过SD卡里的APK文件安装,有安装界面,由packageinstaller.apk应用处理安装及卸载过程的界面。应用安装的流程及路径应用安装涉及到如下几个目录:system/app系统自带的应用程序,无法删除data/...
阅读全文
摘要:对于应用携带的静态数据,可以放置在应用的assets目录或者res,raw目录下。对于assets目录下的静态数据,存在当文件最大支持1MB的局限,读取方式如下:1InputStream is = getAssets().open("xxx.xx");对于res,raw目录下的文件,可以通过如下方式读取:1InputStream is = resources.openRawResource.(R.raw.xxx);另外,Android还对创建缓存提供了支持,通过getCacheDir()可以获取应用的缓存路径,在系统可用空间不足时,Android会清空缓存,但对于开发者而言
阅读全文
摘要:一、URI 通用资源标志符(Universal Resource Identifier, 简称"URI")。 Uri代表要操作的数据,Android上可用的每种资源 - 图像、视频片段等都可以用Uri来表示。 URI一般由三部分组成: 访问资源的命名机制。 存放资源的主机名。 资源自身的名称,由路径表示。 Android的Uri由以下三部分组成: "content://"、数据的路径、标示ID(可选) 举些例子,如: 所有联系人的Uri: content://contacts/people 某个联系人的Uri: content://contacts/p.
阅读全文
摘要:Here is HauteLook’s logger class from our Android Code Library. It displays class name, method name and line number per line of log message.?123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
阅读全文
摘要:在移动开发里很多时候需要用到异步处理。Android的主线程如果等待超过一定时间的时候直接出现ANR(对不熟悉Android的朋友这里需要解释一下什么叫ANR。ANR就是Application Not Responding,应用无响应的意思。系统在应用一段时间无响应的时候会弹出这个对话框。用户可以选择继续等待或者强制关闭)。这些还是次要的,最主要的还是心急的用户。让用户长时间等待是得罪他们的最好办法!Android有一个很简单的办法实现异步处理:AnsyncTask。使用的时候你需要继承一个基类public abstract class AsyncTask对java不熟的同学这里需要说明,尖括
阅读全文
摘要:由于做Android在底层有库的时候需要交叉编译环境,c代码需要用ndk-build来进行编译,而java代码则需要用Android sdk编译。之前由于对eclipse ide不太熟悉,所以往往编译的时候都是在记事本里写好c代码,然后用cygwin搭建ndk-build环境,用ndk-build来编译出相关的so之后再用eclipse里去编译java程序,从而使用该so。 其实并不用这么复杂,利用eclipse完全可以达到编译so的目的 点击project->builders->new->Program然后选择Location在windows下为D:\Android\ndk
阅读全文
摘要:Android不是很熟。从网上找到了想要的代码后兴高采烈的导入workspace中,直接开Run。but在真机的时候Console、LogCat下都没显示什么有用的东西,就是写NDK编译完Native代码的消息。 无奈间,跑真机每次都要解锁太麻烦就跑起了模拟器。模拟器还是跑了几次才在选择设备的界面里出现。开始还一直在创建新机的界面绕。跑起来模拟器之后终于看到了APP退出的异常。第一个就是NoClassDefFound。这样就可以开始解决问题了。百度了下,google就不用了,这么明确的错误。终于发现,是因为刚导入到workspace中的代码光是忙着配置NDK了,没来得及配置依赖的库。配置...
阅读全文
摘要:1 import java.io.File; 2 3 import android.app.Activity; 4 import android.app.AlertDialog; 5 import android.content.DialogInterface; 6 import android.content.Intent; 7 import android.graphics.Bitmap; 8 import android.graphics.BitmapFactory; 9 import android.net.Uri;10 import android.os.Bundle;11 im..
阅读全文
摘要:down voteacceptedFound the answer via this question:Auto Code Completion on EclipseBasically the auto activation trigger for auto-complete by default is set to only the character ".".To make code assist / auto complete trigger always, you have to change the string to:.abcdefghijklmnopqrstu
阅读全文
摘要:Downloading the Support PackageThe Support Package is provided as a downloadable package from the Android SDK Manager. To install:Launch the Android SDK Manager.From Eclipse, you can selectWindow>Android SDK Manager. Or, launchSDK Manager.exefrom the<sdk>/directory (on Windows only) orandro
阅读全文
摘要:yMichael Myers♦Nov 19 '10 at 15:17This question is protected to prevent "thanks!", "me too!", or spam answers by new users. To answer it, you must have earned more than 10reputationon this site.5 Answersactiveoldestvotes up vote275down voteaccepted ...
阅读全文