今天要给桌面做一个功能,给一个View加个背景,该背景图为点9图片,但是图片的位置不在我们的apk。
于是我先写接口,将图片放到res/drawable的目录下,无论是使用View.setBackgroundResource(resID)还是使用View.setBackgroundDrawable(drawable)都可以显示正常,于是我信心满满的就以为大功告成了,整个人都飘起来了呢。
然而,当我使用从外部引入的点9图片时(反正就是不在项目内,从外部以流的形式得到一个bitmap),看到bitmap我就很高兴了,因为我可以很熟练的使用new 一个BitmapDrawable来设置一个View的背景,可是好戏一般都在后头,我得到的这个bitmap居然是将原本的3*3的图片平铺了,也就是说本来只要最中间一个部位的,结果9个宫格的值都给取上了。问了同事才知道外部的点9图片需要编译之后才能被识别,那么怎么编译呢?
就我个人而言,只知道两种:
一、通过编译程序,解压apk
1、将你的点9图片放到项目的res/drawable-**目录下;
2、得到加好图片之后的apk(eclipse右击运行,或者eclipse右击->Android Tools->Export ...或者使用独 有的编译环境编译,反正得到apk即可)
3、用解压软件解压apk文件,解压之后即可找到对应的res/drawable/你所需要的点9图片
此时可以发现我原本3*3的图片变成了1*1的图片了,而且size也变小了很多。
二、通过android build tools aapt
该功能是谷歌已经准备好了的,就在sdk/build-tools/android-***目录下(Windows环境下,步骤):
1、cd到自己的sdk/build-tools/android-***目录下,如我的:C:\1.eclipseWithSDK\adt-bundle-windows-x86-20140702\sdk\build-tools\android-4.4W 可以看到里面有个文件是aapt.exe
2、准备好你要编译的文件,最好将所有的要编译的都放到一个文件夹下,如我的放在F:\test目录下,该目录下有一张点9图“gn_launcher_main_menu_bg.9.png”
3、创建一个你要存放目标文件的目录,例如F:\test2 (实践证明,这个文件夹必须在运行编译之前建好);
4、编译:aapt.exe c -v -S F:\test -C F:\test2
之后便可以看到test中的需要编译的图片都编译到test2中了,而且大小尺寸都有改变
相关推荐
一、apk反编译得到程序的源代码、图片、XML配置、语言资源等文件 下载上述工具中的apktool,解压得到3个文件:aapt.exe,apktool.bat,apktool.jar ,将需要反编译的APK文件放到该目录下, 打开命令行界面(运行-CMD...
----------------------------------- Android 编程基础 1 封面----------------------------------- Android 编程基础 2 开放手机联盟 --Open --Open --Open --Open Handset Handset Handset Handset Alliance ...
9.74、从GALLERY选取图片 303 9.75、打开录音机 303 9.76、语音朗读 303 9.77、手机获取视频流显示在电脑上 305 9.78、蓝牙的使用 313 9.79、一个很好的加密解密字符串 316 9.80、DRAWABLE、BITMAP、BYTE[]之间的...
9.74、从GALLERY选取图片 303 9.75、打开录音机 303 9.76、语音朗读 303 9.77、手机获取视频流显示在电脑上 305 9.78、蓝牙的使用 313 9.79、一个很好的加密解密字符串 316 9.80、DRAWABLE、BITMAP、BYTE[]之间的...
在编译时根据GetJar和GetLib获取执行和依赖的其他文件,最终完成编译。 在这里,支持库实际上做到了一个桥接,将Jar与EA-Code连接了起来。 代码图片: 窗口设计器,项目管理,右侧组件列表 编译过程:
编译过程,编译开始时,将开始分析源码,将源码进行处理,处理的过程实际上是作为了一种替换,将原本写好的代码,根据JAVA与Android的规范进行替换,将代码替换为符合标准的java代码,之后调用java编译器进行编译。...
此时此景,笔者只专注Android、Iphone等移动平台开发,看着这些源码心中有万分感慨,写此文章纪念那时那景! Java 源码包 Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。编辑音乐软件的朋友,这...
此时此景,笔者只专注Android、Iphone等移动平台开发,看着这些源码心中有万分感慨,写此文章纪念那时那景! Java 源码包 Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。编辑音乐软件的朋友,这...
除了ov5640.c之外,其它的驱动都不编译,节省编译时间! W:\ov5640_spi20_r40t\lichee\linux-3.10\drivers\media\platform\sunxi-vfe\device\Makefile obj-m += ov5640.o #obj-m += ov2640.o #obj-m += ov7736.o #...