`
handsomeliuyang
  • 浏览: 314894 次
  • 性别: Icon_minigender_1
  • 来自: 益阳
社区版块
存档分类
最新评论
文章列表
 Ant使用   在ant的官网http://ant.apache.org进行下载后apache-ant-1.8.2包 解压(存放的路径不要有中文字符) 把ant里的lib设置到环境变量:E:\Android\apache-ant-1.8.2\lib 这样在命令行里就可以直接使用ant 学习资料:1.  ant使用指南.rar 2. 文档:apache-ant-1.8.2/docs/manual/index.html下的Ant Tasks à List of Tasks     Ant的For循环   在
  设计模式,这个词听起来真的有种很高深没测的感觉,很想去弄懂它,总感觉要想成为技术大牛,如果连这个都弄不懂,就感觉太差劲了,但每次下定决心去看时,总是看不进去,要么觉得其中的术语太过于正式,很难看懂,还有就是总感觉看了也用不上。   但今天在看模板方法模式时,才发现我已经使用过这个模式,只是自己不知道它就叫模板方法模式而已。   首先我们来看模板方法模式的书面定义:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。这个定义实在是太讳涩了,我的理解是,如果我们有两个有很多相似代码的类时,我们常常会抽出一个公共的抽 ...
流式下载   下载边播放的BT软件,下载时必须要从电影的开头下载,而并非是其它BT软件的下载方式.,这种可以边下载边播放的下载 方式,就可以称为流式下载 在多媒体内容如SVG文件的渐进式下载中,客户缓冲一些数据一段时间,因此可以及时地对内容解码和呈示。为了客户在适当的时间开始呈示文件的内容,客户需要正确地估算启动延迟时间。在发送数据之前或同时,服务器向客户提供表示内容特性的信息,如一些或所有场景的大小和内容呈示时间。该信息可以包括确保在每个剩余场景的呈示时间之前每个剩余场景将可供使用的传输最小带宽。客户基于所提供的信息估算启动延迟时间。再者,客户可以确定何时从其数据缓冲器移除一个或多个文件,以 ...
先把程序中的引用了没有资源的地方先去掉 1.千万不要重启Eclipse、也不自己创建R.java 类文件 2.右击你的工程(项目)——>Android Tools——>Fix Project Properties 将会再次创建出R文件,数据不丢失

TableLaout样式

要想用TableLaout来模仿九宫格的样式,其中有两个难点: 一:边框的设置    每一行中的分隔线,可以直接加在背景图片上。    每行之间的分隔线,可以加一个View对象,对于设置背景就可以了 二:点击某一项后,颜色提示    对于点击的颜色提示,可以在每cell中的ViewGroup上加背景,把其背景设置为一个根据其状态发生变化的Selector。

Bitmap OutOfMemery

通过GridView的getLastVisiblePosition()和getFirstVisiblePosition()方法确认当前GridView控件中将会显示Dataset中的数据范围,在该范围之内的图片应该是已经解码过的,而不在该区间中的图片,可以在适当的时候使用recycle()方法回收。实现方式可以使用HashMap来存储对应的ID和Bitmap HashMap<Integer, Bitmap> picMap,Integer的值对应path的ArrayList即可,系统每次回调getView()的时候,通过上面的两个方法,确定需要显示的ID范围,遍历该范围中的ID,从pi ...
主要的知识在:http://xy0811.spaces.live.com/Blog/cns!F8AECD2A067A6B17!1508.entry 我这里只说说我自己的理解: 先说清楚一点:什么是显示点阵 显示点阵就是指在显示屏上长和宽各能显示出多少个像素点,或者在LED显示屏上长和宽有多少个LED会同时发光。 在显示屏上,真正能够显示出来的像素点是有限的,并不是说,你每英寸上的像素点越多就显示的越多。对于一个显示尺寸一定的显示屏,其能够显示的像素点是一定的,即其density是一定的。 在软件的显示单位是分辨率。分辨率相当于一个距阵,表示其中的点数。并不是分辨率越大,其显示屏就越大,这还要看其 ...
在使用ListView时,常常是与其他的layout一起使用,比如要实现分页,加一个标题。我们最快能想到的办法是:写一个LinearLayout布局来实现,但这里就有一个问题,当我们向下翻ListView的时候,标题不会隐藏,其下一页的按钮也不会出来。    后来我就想,如果把ListView的第一个item变成标题或是把最后一个item变成下一页的按钮,不就可以了吗。这样是可以实现,但我们根本没有必要这么做,ListView给我们提供了两个方法:addFooterView()和addHeaderView()。我们只要利用这两个方法,向界面中添加View,这时的View就会随着上下翻,而上下移动 ...
对于程序员来说,最头痛的就是UI界面的设计,而在android中,只能自已做界面。有时就在想,别人是怎么写出那样好看的界面的。 Android给我们提供了一个很好的工具,可以查看正在运行的界面的设计:hierarchyviewer.bat 使用方法:    第一:运行一个模拟器,并打开要查看的UI界面。    第二:运行android-sdk-windows\tools包下的hierarchyviewer.bat工具    第三:选择你要进行查看的模拟器(如果你打开了多个)    第四:点击菜单中的Hierarchy-->Load View Hierarchy,就可以查看了。 虽然不是 ...
Android is a great development platform. Numerous built-in components and widgets simplify developer’s life greatly, and Intents are just awesome — in fact, I added sharing of content through Facebook, email and SMS to my application literally with 10 lines of code. Coming from a Java Swing backgroun ...
Service是在后台运行的程序,只是没有界面,所以常常用来进行下载,上传,音乐播放等等操作。这时,我们常常把Service运行一个单独的进程中。但常常我们的业务需要我们的前台Activity与后台的Service进行交互、进行通信,比如下载进度条。 Activity和Service的通信的方式 第一种是用广播intent,这种方式在显示进度条的时间不是太好,因为这时要发送大量的广播,会把UI主线程堵塞。 第二种方法是用:aidl。至于aidl怎么用,网上有很多的文章,我这里主要讲线程之间的关系。如果下载操作,是在Service的主线程中做的,那Activity中在调用这个下载方法时,会等到后台 ...
      开发、调试Android程序的时候有时候需要看一下android sdk的源代码,Goolge在发布SDK时没有把源代码包含进去着实有点让人费解,对很多人来说Git无疑是个生涩的东西,而 framework中所有Java代码加起来打个包也就是20多MB。更要命的是,Android Eclipse plugin (ADT)不允许我们在项目属性中attach源代码到android.jar上。好在Eric Burke找到了把source加入到SDK中的办法 ,通过分析ADT的源代码我们知道ADT是从SDK目录下的“sources” 目录来查找class对应的源代码,这样我们只要把源代码放到 ...
运行环境: 1、安装JDK 2、安装Android SDK 建议:添加JDK、SDK的环境变量,将路径添加到path环境变量中。 配置步骤: 1、进入cmd命令行模式下,判断JDK和Android是否安装和配置成功 (判断JDK是否安装好,请输入java -version,如果能返回java的版本信息,则安装成功) (判断Android是否安装好,请输入Android -h,如果能返回Android的版本信息,则安装成功) 2、创建AVD、SDcard 2.1创建AVD,cmd命令行模式下,输入 >android create avd --name sdk_1_5_av ...
在android中,要读取SDcard和内部存储卡中的Media数据,可以直接用File类去遍历读取,但android还提供了一个媒休数据的内容提供者:MediaStore.Audio.Media 代码如下: cursor =getContentResolver().query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, new String[]{MediaStore.Audio.Media.TITLE,MediaStore.Audio.Media.DURATION,MediaStore.Audio.Media.ARTIST,MediaStor ...

使用Alarm

Alarm是在预定的时间触发Intent的,独立于应用程序的提醒用户的方式。当这个Alarm触发后,就会广播这个Intent,如果应用程序没有起启,就会启动这个应用程序,而不需要就用程序被打开或者处于活动状态。 通过AlarmManager来管理所有的Alarm。 Intent intent = new Intent(this, OneShotAlarm.class); PendingIntent sender = PendingIntent.getBroadcast(this, 0, intent, 0); // 设置警报时间 Calendar calendar = Cale ...
Global site tag (gtag.js) - Google Analytics