Android开发项目小总结

1.scrollView是继承自frameLayout,所以在使用LayoutParams时需要用frameLayout的

2.EditText中有一些预置文本的时候,想把光标调到最前面,一开始是使用的setSelection(0),结果发现在三星P1000上面有问题。经过研究发现需要先调用EditText.requestFocus(),再调用setSelection(0)。否则的话,在2.x的机器上有问题,但3.x上面是好着的。

3.使用android:imeOptinos可对Android自带的软键盘进行一些界面上的设置:

android:imeOptions="flagNoExtractUi"  //使软键盘不全屏显示,只占用一部分屏幕     
同时,这个属性还能控件软键盘右下角按键的显示内容,默认情况下为回车键     
android:imeOptions="actionNone"  //输入框右侧不带任何提示     
android:imeOptions="actionGo"    //右下角按键内容为'开始'     
android:imeOptions="actionSearch"  //右下角按键为放大镜图片,搜索     
android:imeOptions="actionSend"    //右下角按键内容为'发送'     
android:imeOptions="actionNext"   //右下角按键内容为'下一步'     
android:imeOptions="actionDone"  //右下角按键内容为'完成'
4.android里设置透明色的方法:比如要设置成75%的透明色,用255*0.75=191.25,取整,191转换成十六进制为BF,将BF加到颜色代码前面BFXXXXXX就可以了。
5.LocalBroadcastManager局部广播管理器包含在Android Support Library 中,用于简化注册BroadcastIntent,以及在应用程序组件之间发送BroadcastIntent的工作。因为局部广播的作用域比较小,所以比全局广播更加高效,而且可以确保应用程序外部的组件接受不到广播,确保敏感数据泄漏出去。
6.调用系统相机拍照时,拍照结束在相册里找不到刚拍的照片,解决办法是在拍完照后发送一个广播去更新相册,需要一下权限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
4.4以前sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED,Uri.parse("file://"+Environment.getExternalStorageDirectory()))); 
4.4以后sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, Uri.parse("file://" + file))); 
7.getX()是表示view相对于父控件左上角的x坐标
getRawX()是相对于屏幕左上角的x坐标(是手机屏幕不管是否有titleBar或者有没有全屏)
8.EditText有一个属性:android:textCursorDrawable,这个属性是用来控制光标颜色的
 
 
android:textCursorDrawable="@null","@null"作用是让光标颜色和text color一样
9.AsyncTask 内部是Handler加线程池实现,线程池最大允许128个任务同时执行,超过128会等到前面的结束才会执行,一般不会超过128,AsyncTask必须在主线程里创建对象AsyncTask比Handler更消耗资源,原因:AsyncTask 内部是Handler加线程池实现
10.onConfigurationChanged() 正常情况下:屏幕旋转等,在屏幕切换的同时,会把之前的Activity销毁onDestroy(),再重新走一遍Activity的生命周期。 避免这种情况发生,可以在AndroidMainfest的Activity属性里加上android:configChanges="orientation",然后复写onConfigurationChanged(). 但也仅限于Android4.0之前的系统。android4.0之后的版本已经做了改变,因为当你切换屏幕的时候,屏幕的尺寸也相应的改变了,所以应该在 <Activity/>属性里添加android:configChanges="orientation|screenSize",然后再复写onConfigurationChanged()就行了。
11.sevice不是一个进程也不是一个线程,他是与当前线程绑定的。
待续。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ltym2014

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值