Android开发自动适配的技巧

2013年08月14日 18:12    发布者:reggae
我们做Android开发都知道,目前市场上的Android手机屏幕大小有很多种,鱼龙混杂,我们做一个Android应用如何在不同屏幕上的进行适应,本文介绍一些技巧。
(PS:新建的QQ群,有兴趣可以加入一起讨论:Android学习交流群:278744577,验证:eec
Android系统采用下面两种方法来实现应用的自动适配:
1)布局文件中定义长度的时候,最好使用wrap_content,fill_parent, 或者dp 进行描述,这样可以保证在屏幕上面展示的时候有合适的大小
2)像素单位都使用DIP,文本单位使用SP
3)为不同屏幕密度的手机,提供不同的位图资源,可以使得界面清晰无缩放。
对应bitmap 资源来说,自动的缩放有时会造成放大缩小后的图像变得模糊不清,这是就需要应用为不同屏幕密度配置提供不同的资源:为高密度的屏幕提供高清晰度的图像等。
不要使用AbsoluteLayout
android开发如何控制虚拟键盘的打开和隐藏
在我们做Android开发中,在一些安全性要求较高的APP中,我们可能会遇到一些这样的需求,我们需要自由的控制虚拟键盘的打开和关闭,我们如何控制虚拟键盘的打开和隐藏呢?本文介绍如android开发如何控制虚拟键盘的打开和隐藏。
一、如何打开虚拟键盘:
InputMethodManager inputMethodManager = (InputMethodManager)  
getSystemService(Context.INPUT_METHOD_SERVICE);
// 接受软键盘输入的编辑文本或其它视图
imm.showSoftInput(submitBt,InputMethodManager.SHOW_FORCED);二、如何关闭虚拟键盘
InputMethodManager inputMethodManager = (InputMethodManager)
getSystemService(Context.INPUT_METHOD_SERVICE);
inputMethodManager.hideSoftInputFromWindow(OpeListActivity.this.getCurrentFocus().getWindowToken(),InputMethodManager.HIDE_NOT_ALWAYS);
//接受软键盘输入的编辑文本或其它视图
inputMethodManager.showSoftInput(submitBt,InputMethodManager.SHOW_FORCED);三、如何判断虚拟键盘输入法打开的状态(判断虚拟键盘是否打开)
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
boolean isOpen=imm.isActive();说明:isOpen若返回true,则表示输入法打开