Android开发问题集锦第一期.pdf
《Android开发问题集锦第一期.pdf》由会员分享,可在线阅读,更多相关《Android开发问题集锦第一期.pdf(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 2010/11/22 www.eoeA|编辑:Tony Android 开发 问 题 集 锦第 一 期 目录 问题一、Bitmap 如何保存 成为一个 bmp 文件 问题二、ByteBuffer 的flip,clear 及rewind 区别 问题三、Android 都支持 哪些 Java 特性 问题四、EditText 控件无 法代码设置 ReadOnly 只读 问题五、使用 xml 让你的Activity 无标题方法 问题六、Android 应用完 全退出终极篇 问题七、View 类中setPadding 和setMargins 区别 问题八、Android 最简单 播放 GIF 动画方法
2、是?问题九、Binder invocation to an incorrect interface 错误 问题十、Android 上开发 手机浏览器原理 问题一、Bitmap 如何保存 成为一个bmp 文件 很多网友可能发现了 Android 的 Bitmap 对象无法保存成 为一个 bmp 文件,即提供的方 法只有 compress(Bitmap.CompressFormat format,int quality,OutputStream stream),可以存为png 和 jpg,png 可能还好说,但是 jpg 是 有损压缩会降低图片的质量,其实 Google 还提供了一 个 API 在
3、 Bitmap 类,通过 copyPixelsToBuffer(Buffer dst)这个方法来解决,Buffer 类型,和前几天我们说到 的 NIO 中的ByteBuffer 处理方式一样,需 要说明的是 java 中的 Buffer 在内存中是连续成块的,同时底层有 C+支持效率还是很高的。通过 copyPixelsToBuffer(Buffer dst)方法将会返回一 个 RGB8888 格式的DIB 文件,DIB 位图和设备无关,这里 Tony 提醒大家,如 果想显示出位图,还需要将其加上位图的文件头才行。问题二、ByteBuffer 的flip,clear 及rewind 区别 近期
4、不少网友表示Android 的NIO 中有关ByteBuffer 的 几种常用方法比如clear,rewind 和flip 到底有哪些区别。下面 Tony 给大家 这三种方法的源码,方便大家 记忆。1.public final Buffer clear()2.position=0;/设置 为 0 3.limit=capacity;/极限和容量相同 4.mark=-1;/取消标记 5.return this;6.7.8.public final Buffer rewind()9.position=0;10.mark=-1;11.return this;12.13.14.public final
5、Buffer flip()15.limit=position;16.position=0;17.mark=-1;18.return this;19.从上面对比来看 flip 和 rewind 的区别就是 flip 会制定 极限和位置相同,所以我们写数据时不多不少正好,而 clear 则清空缓冲区。问题三、Android 都支持 哪些Java 特性 很多 Java SE 或EE 的程序 员想转到 Android 平台上进行 开发,对于 Android 平台上到 底对 Java 支持有多少呢?下面Tony 给大家总 结下常规的支持:目前来看 JDK 的高级特性 均支持,比如说 1.Java 的反
6、射、2.NIO(New I/O)、3.JNI(Java Native Interface)相对而言 对于 OpenGL 和SQLite 的支持比较强大,但是AWT 和 JDBC 这些东西都不支持。在 Xml 解析上,兼容DOM、XmlPull 和 SAX,同时数据交 换格式上,Android 虽然不支 持 LINQ 但对于Java 来说JSON 同样支持。对于 Http 处理方面,提供 了轻量级的 Http 处理类,以及 更完善的 Apache 库支持。音频方面 Android 比较强 大,使用了 OpenCore 库,很多地 方我们可以自己编写编码、解码器进行扩展。Android 在文件系统
7、上基 本山和 Java 是相同的,不过对 于高效率的内存影射文件而言提供了android.os.MemoryFile 这个 类。总体而言,Java 程序员转 入 Android 开发只需要了解平 台特有的,Intent,Service,Receiver 和Activity 就差不多了,深入了 解下 AIDL 和 UI 控件和自定义Widget 基本上可以胜任常规的 工作。问题四、EditText 控件无 法代码设置ReadOnly 只读 有些网友可能发现Android 的EditText 控件有个设计bug,就是无法使用Java 代码方式 设置ReadOnly只读方式,但是 Android12
8、3 提示大家通过 xml 代码可以设 置 android:editable=false,相关的setEnabled 方法这里不适用,同时 android.text.Editable.Factory 也无法设置可编辑,该类相关方法只有 static Editable.Factory getInstance()和 Editable newEditable(CharSequence source)两个。目前还没有很好的解决方法,EditText 控件这种设计缺 陷确实比较麻烦,Tony 给大家 一个曲线的方法,通过父类 TextView 的 addTextChangedListener(TextWa
9、tcher watcher)方法,设置一个listener 监控文字修改后立即恢复原来的内容即可。问题五、使用xml 让你 的Activity 无 标题方 法 近期收到 网友的邮件表示如何不在 onCreate 中设置无标 题,其实方法比较简单,这里 Tony 给大家一个简单的吧,在 androidmanifest.xml 中找到需要设置的 Activity,加一个属性内容为 android:theme=android:style/Theme.NoTitleBar 即可,比如说 这样子 android123_cwj 这个窗口在运行时就没有标题了。是不是很简单,同时大家使用 onCreate 中
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Android 开发 问题 集锦 第一
限制150内