Android
Jerome_Song
Neither a talker nor a thinker,only a geeker.
展开
-
Android中的DI(依赖注入)框架--RoboGuice
RoboGuice是应用于Android开发中的DI(依赖注入)框架,基于 Google 自己的Guice库.如果你曾接触过Spring框架(Java开发中三大框架之一,现在甚至比J2EE都流行)或Guice框架,你就应该知道这种开发模式的便捷之处了。先来看一下典型Android中的Activity代码:class AndroidWay extends Activity {翻译 2013-02-26 14:13:16 · 2421 阅读 · 2 评论 -
关于Android开发的规范性
一、图片资源 背景:1.无状态的背景:一般是某个界面的主题背景,或某个区域的背景,不随其状态而改变如:bg_main 主界面背景 ,bg_login登录界面背景等等2.有状态背景:bg_描述_状态1[_状态2],这种图片,面积相对比较少,主要用于控件上的不同状态,而且在layout配置文件当中,一般不会直接引用,而是通过定义"selector"文件的方原创 2013-08-24 12:02:16 · 1055 阅读 · 0 评论 -
Android Tips-- Activity.runOnUiThread
在开发过程中,发现Handler无处不在,更多的是直接new出一个Handler仅仅是为了在UI线程执行一句代码。Handler mHandler = new Handler();..... mHandler.post(new Runnable() { public void run() { textView.setText(R.string.succes原创 2013-08-31 15:18:11 · 1108 阅读 · 0 评论 -
ArrayIndexOutOfBoundsException with custom Android Adapter for multiple views in ListView
The item view type you are returning from getItemViewType() is >= getViewTypeCount().原创 2013-09-09 11:00:31 · 967 阅读 · 0 评论 -
Android 4.2原生支持从右到左的文字排列格式
Android 4.1(Jelly Bean) 在 TextView 和 EditText 元素里对“双向文字顺序”提供了有限的功能支持,允许应用程序在编辑和显示字符的时候,能够同时支持从左到右(LTR)以及从右到左(RTL)的排列格式。Android 4.2目前已经对“从右到左”的文字排列顺序给予了原生级别的全面支持,包括提供了一个布局镜面工具,使得开发者把能够将优质的用户体验带给每一位用转载 2013-09-24 14:30:29 · 2924 阅读 · 0 评论 -
Uncaught Error: Error calling method on NPObject.
这个错误会有多种原因导致,但最常见的原因就是在WebViewCoreThread现成中调用修改UI界面的相关方法导致,我就是犯的这个错误,jot down here。解决办法:Runnable runnable = new Runnable() { public void run() { // your code here }}runOnUi原创 2013-11-07 22:18:00 · 6094 阅读 · 0 评论 -
Cleaner View Casting with Generics
在Android获取一个View一般都是通过如下方式:TextView textView = (TextView) findViewById(R.id.textview);相信大家都写过无数次findViewById了吧,每次都要Cast一下是否很不爽啊。今天有个家伙想到一种解决该问题的秘密武器:泛型。在项目的基类Activity中添加如下函数: @SuppressWa转载 2013-11-28 09:36:05 · 943 阅读 · 0 评论 -
Android开发中BuildConfig.DEBUG的使用
ADT(r17)发布以后,Google为我们提供了一种新的调试机制,即BuildConfig.DEBUG。 ADT 17.0.0的New build features第二条如下描述: Added a feature that allows you to run some code only in debug mode. Builds now generate a cla原创 2013-11-28 17:10:35 · 1757 阅读 · 0 评论 -
在Android中使用Font-Awesome
Font-Awesome 是为Bootstrap设计的一个图标集合字体,里面包含了300多个常用图标。使用Font-Awesome还具有如下优点:1. 减少了图标的绘制工作2. 可以设置图标的颜色和大小3. 减少了图标的大小并且可以减少apk的大小,只需要一个图标字体文件即可,不需要各种尺寸的图标文件了,比如 HDPI、XHDPI等各种尺寸的图标。Font-Awes转载 2013-11-28 13:31:58 · 2875 阅读 · 0 评论 -
做个懒惰的程序员--快捷键
在开发或学习过程中熟练使用快捷键进行操作,效率会多多少少提高一些,下面就列举了一下我个人常用到的快捷键。1.PC基本操作常用快捷键: Alt+Enter :显示选中文件的属性 Alt+Space+C :关闭当前窗体(个人认为比点关闭X或Alt+F4要好用的多,按键比较近) Alt+Space+X :当前窗体最大化原创 2013-02-26 20:24:45 · 1486 阅读 · 0 评论 -
Android不同版本上Toast连续显示的问题
Toast可以用来显示提示信息,如果用户连续做某个动作,持续不断的弹出Toast,默认情况下会都显示出来,由于是toast是排队显示的,这样就会持续很长时间。通过查看API可知,可以执行show显示之前,先调用cancel取消之前的显示,这样就不会出现连续显示的问题,只显示最后一次的提示。但是,不是所有的版本上都可以这样使用的。通过查看Toast类的cancel函数可知,cance转载 2013-08-26 14:32:10 · 1548 阅读 · 0 评论 -
使用LocalBroadcastManager
LocalBroadcastManager是Android Support包提供了一个工具,是用来在同一个应用内的不同组件间发送Broadcast的。使用LocalBroadcastManager有如下好处:发送的广播只会在自己App内传播,不会泄露给其他App,确保隐私数据不会泄露其他App也无法向你的App发送该广播,不用担心其他App会来搞破坏比系统全局广播更加高效转载 2013-07-01 08:56:22 · 1301 阅读 · 0 评论 -
Android 日历控件:TimesSquare
不经意间发现一个Android的开源日历控件--TimesSquare,拿来分享给大家,先上图:Android端显示的日历控件Android用法:1.先导入library包,可去github下载,我的源码包里面也有包含;2.新建项目把library添加到新项目中,编译;3.当你看到\gen目录下有了com.squareup.timessquare这个包时,说明library原创 2013-02-28 11:57:19 · 7979 阅读 · 7 评论 -
Android中GridView的按下效果及selector的使用
已经好久没正儿八经的学习工作了,刚刚换了新工作,虽然不是非常理想,但总算可以踏实下来了,抽出时间总结一下自己的Android知识,废话不多说,进正题。最近遇到一个问题,但具体原因不明确,在这儿写出来,希望了解其中原因的给出具体明确的答案。 相信很多朋友都遇到过自己写的GridView点击某个Item时,发现按下效果很难看,视乎按下产生的阴影超出本身的范围,而且GridView莫名其妙原创 2013-03-30 21:53:45 · 9353 阅读 · 0 评论 -
Android中EditText中文英文长度控制
如果将EditText的输入长度控制为N个字符,那有简单的两种方法:1.在xml布局文件中对EditText添加 android:maxLength="N"; <EditText android:id="@+id/et_test" android:layout_width="match_parent" android:layout_heigh原创 2013-04-04 15:52:45 · 4936 阅读 · 2 评论 -
Android中ListView圆角实现,仿iPhone中UITableView
微信及微博都用到一种ListView,就像大家看到的iphone中的UITableView,item为圆角。先上效果图: 简单实现如下: package br.com.dina.ui.example;import br.com.dina.ui.widget.UITableView;import android.app.Activity;import androi原创 2013-03-25 17:42:22 · 3383 阅读 · 3 评论 -
Android文件上传,PHP端接收
最近项目中要用优化文件上传操作,因此对Android端文件上传做下总结。测试服务器端就用PHP写了,比较简单,代码如下:<?php$base_path = "./uploads/"; //接收文件目录$target_path = $base_path . basename ( $_FILES ['uploadfile'] ['name'] );if (move_uploaded_file原创 2013-04-20 10:14:08 · 9507 阅读 · 4 评论 -
Android优秀开源项目大全
roottools: RootTools gives Rooted developers easy access to common rooted tools... https://code.google.com/p/roottools/wiki/RootTools mmsbg: mms bg for auto send msg and auto dial h转载 2013-04-20 23:30:32 · 1187 阅读 · 0 评论 -
Android加载网页JavaScript与Java之间的相互调用
最近项目中涉及到Android中的网络通信与交互、html5等相关内容,由于之前没仔细研究过,在这里总结一下,下面是JavaScript与Java相互调用的一个小例子,废话不多说,直接上代码: function ok() { window.player.playOk(); } function wrong() { window.player.playWrong(); }原创 2013-05-17 23:36:30 · 1346 阅读 · 0 评论 -
Android的导航抽屉---Navigation Drawer
2013 Google I/O大会已经过去好几天了,我似乎有点跟不上节奏,也没抽出时间去仔细看一遍,似乎没有想象中那么轰动,,很多同学可能认为,谷歌即使不拿出Android 5.0酸橙派,好歹也会弄个Android 4.3出来装装样子,可是什么都没有,也没有新手机Nexus 5的任何消息,不免有点儿失望。算了,不管干货多与少,对于Android开发者来说,先来看看推出的新功能Navigatio原创 2013-05-20 22:37:53 · 13106 阅读 · 14 评论 -
Android开源项目学习笔记(二)--SlidingMenu
前面总结中多次提到过SlidingMenu,自己也对这个开源控件的使用简单的学习了一下,至于控件的编写,作为小菜的我由于水平有限,暂时没考虑去研究,先用着呗,当然要感谢这些大牛们在开源社区的贡献。废话不多说,直接看代码吧(该项目的Lib库依赖ActionBarSherlock的Lib库) 今天主要看在PropertiesActivity这个类,因为其中几乎包含了对SlidingMe原创 2013-05-25 15:14:04 · 9101 阅读 · 9 评论 -
Android开源项目学习笔记(一)--ActionBarSherlock
ActionBarSherlock 自Android3.0之后,ActionBar的操作模式使得用户体验强了好多,但官方并没有提供低版本的解决办法,如果你关注Android开源项目,那对ActionBarSherlock肯定不陌生了,是的,老外JakeWharton的这个开源项目就很好的解决了在低版本操作系统中使用ActionBar及其他一些具有ICS风格的界面设计,而且很多其他开源框架也是在原创 2013-05-13 21:44:39 · 3618 阅读 · 0 评论 -
Android-NDK开发示例--通过JNI获取MD5码
JAVA中获取MD5码 对于MD5码,大家一定耳熟能详了,这里也不多做解释,由于在JDK中有相关封装,所以在java代码中很简单就可以获取,获取32位MD5如下:public static String encrypt(String str) { MessageDigest md5 = null; try { md5 = MessageDigest.getIn原创 2013-06-09 23:07:15 · 9088 阅读 · 0 评论 -
JNI--warning: incompatible implicit declaration of built-in function 'memcpy'
在JNI编译生成动态库的时候你可能会看到这个警告,原因是没有引入#include 同时,可能还会带来下面的错误:Process XXX terminated by signal (11),记录一下错误信息。。原创 2013-06-06 21:04:27 · 4396 阅读 · 0 评论 -
64位Ubuntu 12.04 R文件不能正常生成
在64位Ubuntu 12.04上搭建完Android开发环境之后,发现R文件不能正常生成,报下面的错误:[2013-12-05 19:49:59 - adb] Unexpected exception 'Cannot run program "/xxxx/android-sdk-linux/platform-tools/adb": error=2, No such file or dir原创 2013-12-05 20:38:14 · 1088 阅读 · 0 评论