分类目录归档:Android开发
Android样式之在代码中添加样式
有时候需要在java中定义控件,但是系统的控件难看。 想换Style?setStyle?Android View中根本就没有这个方法。 因为Style不是一个属性,而是一个属性集合。所以是无法直接set的。 这里以CheckBox做示例 找到framework下的res目录下的values/Theme.xml。找到CheckBox的样式定义 1 2 3 <item name="checkboxStyle"> @android:style/Widget.CompoundButton.CheckBox </item> 打开同目录下的style.xml,找到“Widget.CompoundButton.CheckBox”样式。 1 2 3 4 5 6 7 8 <style name="Widget.CompoundButton.CheckBox"> <item name="android:background"> @android:drawable/btn_check_label_background </item> <item name="android:button"> @android:drawable/btn_check </item> </style> 下面知道该怎么做了吧? 在代码中给上面的属性赋相应的值就可以了。 1 2 cb.setBackgroundResource(R.drawable.checkbox_bg); cb.setButtonDrawable(R.drawable.checkbox_button); 还有一种方法,但是对大部分应用程序来说都做不到,因为需要在系统资源中添加Style(可能有更好的方法,暂未找到)。 … 继续阅读
众多Android 开源项目推荐,给力工作给力学习
FBReaderJ FBReaderJ用于Android平台的电子书阅读器,它支持多种电子书籍格式包括:oeb、ePub和fb2。此外还支持直接读取zip、tar和gzip等压缩文档。 项目地址:http://www.fbreader.org/FBReaderJ/ Angle Angle是一款专为Android平台设计的,适合快速开发的2D游戏引擎,基于OpenGL ES技术开发。该引擎全部用Java代码编写,并且可以根据自己的需要替换里面的实现。项目地址: http://code.google.com/p/angle/ android-shuffle android-shuffle是一个GTD(Getting Things Done)个人备忘记事本。 项目地址:http://code.google.com/p/android-shuffle/ Open GPS Tracker GPSTracker是一个能够使用Android地图记录你的驾车或旅行路线的项目,出发前打开软件选择开始记录,你所经过的路线就会实时显示在地图上,同时还会显示当前的行驶速度。程序会按用户自己设置的标题自动存路线留做日后查看,也可以把路线分享给朋友。GPSTracker项目是一个Map方面的完整应用,包括两个主要组成部分,第一部分是一个收集和存储GPS追踪数据的系统服务,第二部分是Map Activity控制跟踪数据并在地图上显示提供接口。GPSTracker项目用到了osmdroid项目的部分功能,其中OpenStreetMap是一个可供自由编辑的世界地图,允许您查看,编辑或者使用世界各地的地理数据来帮助您。 项目地址:http://code.google.com/p/open-gpstracker/ Rokon Rokon是一个强大、可扩展、灵活的Android 2D游戏引擎,基于OpenGL ES技术开发,物理引擎为Box2D,因此能够实现一些较为复杂的物理效果,有人将它称为Cocos2d-iPhone引擎的Android版(因为业务逻辑和编码风格上也确实很像)。 )。 项目地址:http://code.google.com/p/rokon/ … 继续阅读
Android 控制台错误 应用程序获取系统权限
在windows平台通过eclipse编译android源码中,如果编译Settings或者android manifest XML中 shared user id 包含android.uid.shared等系统权限的时候,则会报以下错误。 一、Installation error: INSTALL_FAILED_UPDATE_INCOMPATIBLE 1、由于卸载没有完全,可以使用设置中卸载相应应用,或者adb uninstall com.android.*** 二、Installation error: INSTALL_FAILED_SHARED_USER_INCOMPATIBLE 主要是由于使用了android.uid.shared导致的问题。 第一个方法简单点,不过需要在Android系统源码的环境下用make来编译: 1. 修改Android.mk文件,加入LOCAL_CERTIFICATE := platform这一行 2. 使用mm命令来编译,生成的apk就可以在模拟器中运行了。 第二个方法麻烦点,不过不用开虚拟机跑到源码环境下用make来编译: 1. 使用eclipse编译出apk文件,但是这个apk文件是不能用的。 2. 查看Android.mk文件,加入LOCAL_CERTIFICATE := 这一行,根据这行的内容,选择相应的签名。 platform—–>platform.pk8和platform.x509.pem shared —–>shared.pk8和shared.x509.pem 3. 使用目标系统的platform密钥来重新给apk文件签名。这步比较麻烦, 首先找到密钥文件,在我的Android源码目录中的位置 是”build\target\product\security”,下面的platform.pk8和platform.x509.pem 两个文件。 然后用Android提供的Signapk工具来签名,signapk的源代码是 … 继续阅读