随笔分类 -  android

learn
摘要:像素密度,即每英寸屏幕所拥有的像素数,像素密度越大,显示画面细节就越丰富。像素密度=√{(长度像素数^2+宽度像素数^2)}/ 屏幕尺寸注:屏幕尺寸单位为英寸 例:分辨率为1280*720 屏幕宽度为6英寸 计算所得像素密度约等于245 阅读全文
posted @ 2014-11-15 09:41 罗小姿 阅读(487) 评论(0) 推荐(0)
摘要:以下是调节音量的流程: Step_1.首先在调节机台Volume_Up_Key & Volume_Down_Key操作时,系统会调用到AudioManager.java中handleKeyUp & handleKeyDown函数,以 handleKeyDown函数为例: 1 public void... 阅读全文
posted @ 2014-09-28 14:10 罗小姿 阅读(585) 评论(0) 推荐(0)
摘要:android:configChanges="locale" 之后在不退出应用的情况下切换到Settings里切换语言,发现该Activity还是重启了。4.2中,app配置了configChanges locale属性后,当app处于后台,并没有finish时,如果改变语言,并不会在resume时... 阅读全文
posted @ 2014-08-21 11:01 罗小姿 阅读(1055) 评论(0) 推荐(0)
摘要:在layout_width設置為fill_parent的時候,layout_weight所代表的是你的控件要優先盡可能的大,但這個大是有限度的,即fill_parent. 在layout_width設置為wrap_content的時候,layout_weight所代表的是你的控件要優先盡可能的小,但... 阅读全文
posted @ 2014-06-13 10:38 罗小姿 阅读(150) 评论(0) 推荐(0)
摘要:打开链接Intentit=newIntent(Intent.ACTION_VIEW,Uri.parse("http://www.baidu.com"));it.setClassName("com.android.browser","com.android.browser.BrowserActivity");getContext().startActivity(it);打开本地网页Intentintent=newIntent();intent.setAction("android.intent.action.VIEW" 阅读全文
posted @ 2014-03-17 17:51 罗小姿 阅读(404) 评论(0) 推荐(0)
摘要:1,基于Android SDK的截屏方法(1)主要就是利用SDK提供的View.getDrawingCache()方法。网上已经有很多的实例了。首先创建一个android project,然后进行Layout,画一个按键(res/layout/main.xml):HelloAndroid.java实现代码为:packagecom.example.helloandroid;importjava.io.FileOutputStream;importjava.text.SimpleDateFormat;importjava.util.Date;importjava.util.Locale;impor 阅读全文
posted @ 2014-03-05 11:36 罗小姿 阅读(661) 评论(0) 推荐(0)
摘要:从现实生活中理解广播机制一听到广播我们第一感觉就会联想到小时候村里面的广播,每逢村里有什么活动都是通过广播发送的。收听收音机也是一种广播,在收音机中有很多个广播电台,每个广播电台播放的内容都不相同。接受广播时广播(发送方)并不在意我们(接收方)接收到广播时如何处理。好比我们收听交通电台的广播,电台中告诉我们现在在交通状况如何,但它并不关心我们接收到广播时做如何做出处理,这不是广播应该关心的问题,OK,到这里我们从生活中的一些小例子浅浅的理解了一下广播,那么Android 中的广播是如何操作的呢?Android 的广播机制在 Android 里面有各种各样的广播,比如电池的使用状态,电话的接收和 阅读全文
posted @ 2013-12-05 17:53 罗小姿 阅读(213) 评论(0) 推荐(0)
摘要:AlarmManager的作用文档中的解释是:在特定的时刻为我们广播一个指定的Intent。简单的说就是我们设定一个时间,然后在该时间到来时,AlarmManager为我们广播一个我们设定的Intent。对应AlarmManager更深层的了解可以参考: http://www.programbbs.com/doc/5888.htm http://jinguo.iteye.com/blog/799778android提供了四种类型的闹钟: ❑ ELAPSED_REALTIME 在指定的延时过后,发送广播,但不唤醒设备。❑ ELAPSED_REALTIME_WAKEUP 在指定的演示后,发送广播, 阅读全文
posted @ 2013-12-05 17:52 罗小姿 阅读(285) 评论(0) 推荐(0)
摘要:publicclassRecursiveFileObserverextendsFileObserver{ /** Only modification events */ publicstaticint CHANGES_ONLY = CREATE | DELETE | CLOSE_WRITE | MOVE_SELF | MOVED_FROM | MOVED_TO; List mObservers; String mPath; int mMask; publicRecursiveFileObserver(String path){ this(path, ALL_EVENTS); } publi.. 阅读全文
posted @ 2013-09-29 14:27 罗小姿 阅读(449) 评论(0) 推荐(0)
摘要:bug:鼠标滚轮向前向后滚动与系统界面滚动相反修改:打开 frameworks/base/services/java/com/android/server/KeyInputQueue.java修改第789行将 di.mRel.mNextData[MotionEvent.SAMPLE_Y] += ev.value @Overridepublicboolean onGenericMotionEvent(MotionEventevent){ if(0!=(event.getSource()&InputDevice.SOURCE_CLASS_POINTER)){ switch(event.ge 阅读全文
posted @ 2013-08-08 14:51 罗小姿 阅读(647) 评论(0) 推荐(0)
摘要:一、Bitmap转DrawableBitmap bm=xxx; //xxx根据你的情况获取BitmapDrawable bd=new BitmapDrawable(bm);因为BtimapDrawable是Drawable的子类,最终直接使用bd对象即可。二、 Drawable转Bitmap转成Bitmap对象后,可以将Drawable对象通过Android的SK库存成一个字节输出流,最终还可以保存成为jpg和png的文件。Drawable d=xxx; //xxx根据自己的情况获取drawableBitmapDrawable bd = (BitmapDrawable) d;Bitmap bm 阅读全文
posted @ 2013-06-19 16:48 罗小姿 阅读(129) 评论(0) 推荐(0)
摘要:class MyTouchListener implements OnTouchListener { private Context ctx; private int mode; private Float oldDist;public MyTouchListener(Context ctx) { this.ctx = ctx;}//用于获得二指间的距离private float spacing(MotionEvent event) { float x = event.getX(0) - event.getX(1); float y = event.getY(0) - event.getY(1 阅读全文
posted @ 2013-06-18 16:02 罗小姿 阅读(283) 评论(0) 推荐(0)
摘要:对于一些手机,像HTC,当自定义Camera时,调用Camera.Parameters的 parameters.setPreviewSize(width, height)方法时,如果width和height为奇数情况下,则会出现黑屏现象,解决办法可参考SDK提供的ApiDemos中关于Camera的 例子:List<Size> sizes = parameters.getSupportedPreviewSizes();Size optimalSize = getOptimalPreviewSize(sizes, w, h); parameters.setPreviewSize(op 阅读全文
posted @ 2013-06-17 14:26 罗小姿 阅读(844) 评论(0) 推荐(0)
摘要:出现Error generating final archive: Debug Certificate expired on这样的编译错误是由于新版的Android SDK调试key有1年的试用期限制,如果当年电脑的Android SDK安装了一年后会出现这样的问题,解决的方法只需要删除早期的key文件即可,系统默认的key文件在Eclipse的Window菜单的Preferences => Android => Build菜单下其中Default debug keystore可以看到。比如当前使用的Windows XP系统下为可能为 C:\Documents and Settin 阅读全文
posted @ 2013-06-16 01:59 罗小姿 阅读(167) 评论(0) 推荐(0)
摘要:在Android中几种网络编程的方式:(1)针对TCP/IP的Socket、ServerSocket(2)针对UDP的DatagramSocket、DatagramPackage。这里需要注意的是,考虑到Android设备通常是手持终端,IP都是随着上网进行分配的。不是固定的。因此开发也是有一点与普通互联网应用有所差异的。(3)针对直接URL的HttpURLConnection(4)Google集成了Apache HTTP客户端,可使用HTTP进行网络编程。针对HTTP,Google集成了Appache Http core和httpclient 4版本,因此特别注意Android不支持http 阅读全文
posted @ 2013-05-07 16:59 罗小姿 阅读(403) 评论(0) 推荐(0)
摘要:1、作用Serializable的作用是为了保存对象的属性到本地文件、数据库、网络流、rmi以方便数据传输,当然这种传输可以是程序内的也可以是两个程序间的。而Android的Parcelable的设计初衷是因为Serializable效率过慢,为了在程序内不同组件间以及不同Android程序间(AIDL)高效的传输数据而设计,这些数据仅在内存中存在,Parcelable是通过IBinder通信的消息的载体。从上面的设计上我们就可以看出优劣了。2、效率及选择Parcelable的性能比Serializable好,在内存开销方面较小,所以在内存间数据传输时推荐使用Parcelable,如activ 阅读全文
posted @ 2013-04-27 13:43 罗小姿 阅读(298) 评论(0) 推荐(0)
摘要:Context,中文直译为“上下文”,SDK中对其说明如下: Interface to global information about an application environment. This is an abstract class whose implementation is provided by the Android system. It allows access to application-specific resources and classes, as well as up-calls for application-level operations su.. 阅读全文
posted @ 2013-04-24 09:58 罗小姿 阅读(310) 评论(0) 推荐(0)
摘要:在安卓操作系统下对于 TextView 字体的支持非常有限,默认情况下 TextView 的 typeface 属性支持 "Sans","serif","monospace" 这三种字体,如果在没有指定字体的情况下,系统缺省会使用 "Sans" 作为文本显示的字体。但这三种字体只支持英文,也就是说只要你显示的文字是中文,无论你选择这三种字体中的哪一种,显示效果都是一样的。为此,谷歌又提供了另外一种字体的支持方式:字库。/*** 在 assets 目录下创建 fonts 文件夹并放入要使用的字体文件(**.ttf)并 阅读全文
posted @ 2013-02-02 15:42 罗小姿 阅读(489) 评论(0) 推荐(0)
摘要:一、JNI提供了一系列的接口,允许java类与使用C/C++等其他编程语言编写的应用程序、模块、库进行交互操作。比如,在java类中使用C语言库中的特定函数,或者在C语言程序中使用java类库,都需要借助JNI来完成。通常在下列几种情况下使用JNI:1)注重处理速度:与本地代码(c/c++)相比,java代码的执行速度要相对慢一些,如果对某段程序的执行速度有较高的要求,建议使用c/c++编写代码。而后在java中通过jni调用,常常能够获得更快的运行速度。2)硬件控制:为了更好地控制硬件,硬件控制代码通常使用C语言编写,然后借助JNI将其与java层连接起来,从而实现对硬件的控制。3)既有C/ 阅读全文
posted @ 2013-01-24 20:28 罗小姿 阅读(219) 评论(0) 推荐(0)
摘要:摘自http://blog.csdn.net/chenshaoyang0011Launcher在应用启动的时候,需要加载AppWidget,shortcut等内容项,通过调用LauncherModel.startLoader(),开始加载的工作。launcherModel中加载好的内容会通过LauncherModel.Callbacks接口的回调函数将数据传给需要的组件,那先来看看Callbacks的定义:[java] view plaincopyprint?publicinterfaceCallbacks{publicbooleansetLoadOnResume();publicintget 阅读全文
posted @ 2012-12-07 16:13 罗小姿 阅读(380) 评论(0) 推荐(0)