随笔分类 - android
摘要:Android系统支持几种图片(.png (preferred), .jpg (acceptable), .gif (discouraged)), 其中Bitmap位图#ffffffff,包括图片透明度Alpha和RGB,图片质量很好,每一个像素位占4个字节,如果图片很大将会占据很大的内存空间。存储在SDCard的image很小,加载进内存可能就会很大。因此,对bitmap图像进行操作,应该特别小心,可能出现内存溢出问题。为此对于大图片,应该引入该图片的二次采样生成缩略图。
阅读全文
摘要:Google为Android平台开发Web Service客户端提供了ksoap2-android项目,在这个网址下载开发包http://code.google.com/p/ksoap2-android/source/browse/m2-repo/com/google/code/ksoap2-android/ksoap2-android-assembly/3.1.0/ksoap2-android-assembly-3.1.0-jar-with-dependencies.jar
使用 kspoap2-android调用webserice操作的步骤如下:
1、创建HttpTransportSE传输对象 传入webservice服务器地址
final HttpTransportSE httpSE = new HttpTransportSE(SERVER_URL);
2、 创建SoapObject对象,创建该对象时需要传入所要调用Wb Service的命名空间、Web Service方法名;如果有参数要传给Web Service服务器,调用SoapObject对
阅读全文
摘要:Google为Android平台开发Web Service客户端提供了ksoap2-android项目,在这个网址下载开发包http://code.google.com/p/ksoap2-android/source/browse/m2-repo/com/google/code/ksoap2-android/ksoap2-android-assembly/3.1.0/ksoap2-android-assembly-3.1.0-jar-with-dependencies.jar
使用 kspoap2-android调用webserice操作的步骤如下:
1、创建HttpTransportSE传说对象 传入webservice服务器地址
final HttpTransportSE httpSE = new HttpTransportSE(SERVER_URL);
2、 创建SoapObject对象,创建该对象时需要传入所要调用Wb Service的命名空间、Web Service方法名;如果有参数要传给Web Service服务器,调用SoapObject对
阅读全文
摘要:android Jni NDK开发环境搭建及其简单实例的编写
由于工作需要,需要采用开发想要的JNI,由于之前没有接触过安卓的开发,所以更加网上的帖子,学习了下。遇到了些问题,然后总结下学习过程中的问题和开发流程
阅读全文
摘要:前面一篇文章写了实现照相功能的一个例子,其实那个实现效果是个略缩图。要查看全图就要先指定照片的存放路径。以后我会修改那个文章。今天先说下图片,文件等上传的实现。接着拿照片说事,光照完了不行还得往服务器上传。
阅读全文
摘要:这是谷歌官方给我们提供的一个兼容低版本安卓设备的软件包,里面包囊了只有在安卓3.0以上可以使用的api。而viewpager就是其中之一利用它,我们可以做很多事情,从最简单的导航,到页面菜单等等。那如何使用它呢,与LisstView类似,我们也需要一个适配器,他就是PagerAdapter。
阅读全文
摘要:使用Tile地图,看过andengine中的例子,都会发现例子中有这么一段话,以前版本的是convertLocalToSceneCoordinates方法。
对于“注1”中的话,始终没有理解这里为什么写16,1,看上面的英文注释,表达很清楚,就是转换成屏幕坐标。
可能是原来没有用过引擎,理解能力偏低。始终没有理解这里填写16,1是怎么来的,这两个数字是随便写的还是怎么计算出来的。看里面的算法,也没什么疑问。
于是网上找资料,上andengine论坛,看着一篇篇的英文帖子,越看越模糊,数字五花八门,没有任何规律。
阅读全文
摘要:先是搜索了一下,在manifest里添加
有了这个权限就可以读取上网记录和书签了。开始时我以为只有上网记录,但是明显bookmarks是表示书签啊。而书签一般是没有时间这个内容的。所以对query语句进行了修改,添加搜索限制条件。
阅读全文
摘要:android的Viewpager 的各种经常的用法,朋友问我要过,所以就稍微总结一下,
ViewPager + Fragment 经常用到 代码是从 actionbarsherlock 中提取出来的,这个效果都知道是 滑动来切换的。直接上代码了
在这里简单说明一下 FragmentStatePagerAdapter 和 FragmentPagerAdapter
2个adapter
第一种 fragment状态adapter - 在当前只会存在 前1个fragment 当前 fragment 和 下1个 fragment 其他销毁 ,适合加载多数据
第二种 FragmentPagerAdapter - 全部存在,所以不太适合加载 大量的数据 如图片什么的,很容易内存溢出。
阅读全文
摘要:在Android1.6之后添加了TextToSpeech,也叫TTS,把相应的文字转化成语音播报,增强了用户体验。可以根据语言播报
阅读全文
摘要:ListView组件在应用程序中可以说是不可或缺的一部分,ListView主要是显示列表数据,同时可以滚动查看,这篇博客主要是对ListView的基本用法进行说明,后面会依次对ListView点击动态加载,上拉加载,下拉刷新,异步获取网络图片进行显示等几个在应用中常用到的功能来进行讲解。
阅读全文
摘要:前面说到了画图,其实更好的就是使用 surfaceView了。
surfaceView 继承于 View,View里面嵌套了一个专门用于画图的 surface,
对于一个View的onDraw()方法,不能够满足将其移动到后台线程中去。因为从后台线程修改一个GUI元素会被显式地禁止的。当需要快速地更新View的UI,或者当前渲染代码阻塞GUI线程的时间过长的时候,SurfaceView就是解决上述问题的最佳选择。SurfaceView封装了一个Surface对象,而不是Canvas。这一点很重要,因为Surface可以使用后台线程绘制。对于那些资源敏感的操作,或者那些要求快速更新或者高速帧率的地方,例如使用3D图形,创建游戏,或者实时预览摄像头,这一点特别有用。
可以直接从内存或硬件设备比如相机等取得图像数据,是个非常重要的绘图容器。它的特性是:可以在主线程之外的线程中向屏幕绘图。这样可以避免画图任务繁重的时候造成主线程阻塞,从而提高了程序的反应速度。绘制的东西直接复制到显存从而显示出来,这使得显示速度会非常快,而在Surface 被销毁之前必须结束。
阅读全文
摘要:Android数据存储方式,包括下面四种:
1. Shared Preferences:用来存储"key-value"paires格式的数据,它是一个轻量级的键值存储机制,只可以存储基本的数据类型。
主要用于系统配置信息的配置,例如:检测是不是第一次使用应用程序;设置的音效开关等。使用SharedPreferences保存数据,其背后是用xml文件存放数据,文件存放在/data/data//shared_prefs目录下。
2. Fils:它通过FileInputStream 和FileOutputStream对文件进行操作。但是文件Files在Android中是属于一个程序私有的,其他程序无法读写其他应用的文件。即无法实现共享。
3. SQLite:Android提供的标准的数据库,支持SQL语句。SQLite是一个开源的关系型数据库,与普通的关系型数据库一样。
4. Network:通过网络来存储和获得数据。将数据存储于网络,需要使用java.net.*和android.net.*这些类。
阅读全文
摘要:一、 Service是什么?为什么要使用Service?
Service是运行在后台运行的应用组件,不与用户交互。
Service不是进程,也不是线程。
处理耗时操作,需开启子线程。
阅读全文
摘要:其实碰撞问题只是涉及到一点小算法而已,但在实际应用,尤其游戏中有可能会遇到,下面给出一个小示例,代码如下:
阅读全文
摘要:杂家前文Android颜色对照表只有颜色和十六进制,有时候需要设置r g b分量的int值,如paint.setARGB(255, 127, 255, 212);就需要自己计算下分量的各个值。这里提供一个带有r g b分量的int型的颜色表。注意paint.setAlpha()及paint.setARGB()的第一个参数,即透明度。其取值范围是0---255,数值越小,越透明,颜色上表现越淡。实际上当设成10以下就会有透明的效果了。
注意:这个透明度是用来设置画笔paint的透明度,然后用paint画各种东西。
阅读全文
摘要:一、在xml文件里可以直接设置:
android:background="#ffffff"
其他颜色可以看这里http://www.cnblogs.com/android100/p/android-setalpha.html
二、在java文件里设置:
LinearLayout myLayout = () findViewById(R.id.linearLayout1);
myLayout.setBackgroundColor(Color.WHITE);
三、在AndroidManifest.xml里利用android:theme来设置,这个命令还是很强大的,如下所示:
theme的设置 可以设置为系统自带的格式,也可以自定义格式。
阅读全文
摘要:8月份的时候因为Android开发团队全部使用Android Studio进行开发,所以我整理了Android Studio的一些资料,并写成入门指南,分享给大家。
如果大家觉得对你有帮助,给个赞哈,后续有时间我会继续完善这本书。
阅读全文
摘要:Android中定义的dimension单位有以下这些:
px(Pixels ,像素):对应屏幕上的实际像素点。
in(Inches ,英寸):屏幕物理长度单位。
mm(Millimeters ,毫米):屏幕物理长度单位。
pt(Points ,磅):屏幕物理长度单位,1/72英寸。
dp(与密度无关的像素):逻辑长度单位,在 160 dpi 屏幕上,1dp=1px=1/160英寸。随着密度变化,对应的像素数量也变化,但并没有直接的变化比例。
dip:与dp相同,多用于Google示例中。
sp(与密度和字体缩放度无关的像素):与dp类似,但是可以根据用户的字体大小首选项进行缩放。
尽量使用dp作为空间大小单位,sp作为和文字相关大小单位。
阅读全文
摘要:由于继续需要做一些无感操控的工作,之前也记录了下利用悬浮窗的方法。今天突然发现原来activity可以直接嗯嗯嗯啊。
首先我在AndroidManifest里给activity添加了如下一行:
android:theme="@android:style/Theme.Dialog"
ok,我发现activity变成对话框的弹出模式了。但是背景也就是桌面是变暗的,我希望能恢复正常的亮度,也就是透明的效果,于是继续搜索。
阅读全文