读书人

android 开发惯用代码备查[更新0312]

发布时间: 2012-09-02 21:00:34 作者: rapoo

android 开发常用代码备查[更新0312]

17.生成圆角图片

? 主要原理就是使用下面这个画图接口来生成圆角图片

?

 canvas.drawRoundRect
?

?

16.查看apk的签名信息命令

?

jarsigner -verify -verbose -certs abc.apk
?

15.Android中Activity finish的接口。

?

关闭自己    Finish()关闭由自己 StartActivity启动的Activity    FinishActivity(requestcode);
?

14.动态修改button等控件尺寸。

?

LayoutParams param = m_AddFiles.getLayoutParams();param.height = 202;
?

?

13.onSaveInstanceState方法的执行时机。

? ? ?该方法会在程序非正常退出的情况下被调用,但是它的调用是不能保证的。

?

12.将控制台输出的LOG信息输出到文件中。

?

adb logcat > ' filename'

?输出的文件在当前执行命名的文件目录下。


11.关闭android的music service.

 Intent i = new Intent("com.android.music.musicservicecommand");       i.putExtra("command", "pause");       mContext.sendBroadcast(i);


10.控制软键盘的显示。
不显示回车键,需要在xml配置里增加属性配置:

android:singleLine="true"



9.如何是application全屏

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);        getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);


在Oncreate的时候调用这两个语句。

8.隐藏application? Title bar

requestWindowFeature(Window.FEATURE_NO_TITLE);



7.如何获取屏幕尺寸

Display display = getWindowManager().getDefaultDisplay(); int width = display.getWidth();int height = display.getHeight();


6.Bitmap ,Drawable 相互转换

Drawable d ;Bitmap bitmap = ((BitmapDrawable)d).getBitmap();




5.android:padding和android:layout_margin的区别.
android:padding是用来控制当前view自己内部 child的位置关系的。
android:layout_margin是用来控制自己与其它跟自己同级的VIEW的位置关系的。


1.如何设置软键盘不自动弹出。
在activity的oncreate方法中设置window的softinputmode.
代码如下:

this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);


2.Android所提供给用户的的一下系统的Service
像NotificationManager Vebrator AlarmManager 都是比较常用的。
WINDOW_SERVICE????????????????????? WindowManager??????????????????? 管理打开的窗口程序
LAYOUT_INFLATER_SERVICE???????????? LayoutInflater?????????????????? 取得xml里定义的view
ACTIVITY_SERVICE??????????????????? ActivityManager????????????????? 管理应用程序的系统状态
POWER_SERVICE?????????????????????? PowerManger????????????????????? 电源的服务
ALARM_SERVICE?????????????????????? AlarmManager???????????????????? 闹钟的服务
NOTIFICATION_SERVICE??????????????? NotificationManager????????????? 状态栏的服务
KEYGUARD_SERVICE??????????????????? KeyguardManager????????????????? 键盘锁的服务
LOCATION_SERVICE??????????????????? LocationManager????????????????? 位置的服务,如GPS
SEARCH_SERVICE????????????????????? SearchManager??????????????????? 搜索的服务
VEBRATOR_SERVICE??????????????????? Vebrator???????????????????????? 手机震动的服务
CONNECTIVITY_SERVICE??????????????? Connectivity???????????????????? 网络连接的服务
WIFI_SERVICE??????????????????????? WifiManager????????????????????? Wi-Fi服务
TELEPHONY_SERVICE?????????????????? TeleponyManager????????????????? 电话服务

获取服务:

ActivityManager manager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);


3.获取当前系统的语言。
java.util.Locale中有详细定义

String locale = context.getResources().getConfiguration().locale.getLanguage();



4.对于android2.2 及android2.3中%s? %d的转义
如果strings.xml字符串定义中出现 %s? %d等输出格式字符,需要转义。
转义方法为:%+符号序号+$+[原来的符号如s\d],
举例来说:如果<string name="test">你好%s,你的分数为:%d.</string>
应该转义为:<string name="test">你好%1$s,你的分数为:%2$d.</string>

?

读书人网 >Android

热点推荐