android软键盘透明,Android杂谈————软键盘、背景透明、粘贴板
● SoftInputModes用户在输入框输入时,软键盘会跳出来,这时软键盘可能挡住了输入框。怎么办嗯?Android的WindowManager.LayoutParams提供了四个常量设置:SOFT_INPUT_ADJUST_NOTHING: 不调整(输入法完全直接覆盖住,未开放此参数)SOFT_INPUT_ADJUST_PAN: 把整个Layout顶上去露出获得焦点的EditText,不压缩
● SoftInputModes
用户在输入框输入时,软键盘会跳出来,这时软键盘可能挡住了输入框。怎么办嗯?Android的WindowManager.LayoutParams提供了四个常量设置:
SOFT_INPUT_ADJUST_NOTHING: 不调整(输入法完全直接覆盖住,未开放此参数)
SOFT_INPUT_ADJUST_PAN: 把整个Layout顶上去露出获得焦点的EditText,不压缩多余空间
SOFT_INPUT_ADJUST_RESIZE: 整个Layout重新编排,重新分配多余空间
SOFT_INPUT_ADJUST_UNSPECIFIED: 系统自己根据内容自行选择上两种方式的一种执行(默认配置)
● Translucent ,Translucent Blur
实现背景透明效果。activity1启动activity2,可以隐约看到activity1的背景。这种效果是通过设置Theme来实现的。在AndroidManifest.xml文件对应的activity中,android:theme=”@style/Theme.translucent”或者android:theme=”@style/Theme.transparent”.
translucent和transparent两个style的定义在styles.xml文件中。设置windowBackground为@drawbale/translucent_background或@drawbale/transparentt_background。
这两个drawable在colors.xml文件中定义。可以看到值分别为e0000000和00000000。前两位是alpha值,表示透明度。后六位是RGB分量。
●ClipboardManager
把一段文字通过这种方式粘贴到粘贴板上面(需要版本11以上支持)
ClipboardManager clipboard = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);
clipboard.setText(需要粘贴的文本);
@TargetApi(Build.VERSION_CODES.HONEYCOMB)
@SuppressLint("NewApi")
@SuppressWarnings("deprecation")
private void copyToClipBoard(){
if (Build.VERSION.SDK_INT<11)
return;
String text= "需要粘贴的文字";
if (!TextUtils.isEmpty(text)){
ClipboardManager clipboard = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);
clipboard.setText(text);
toast("text已经复制到剪贴板了");
}
}
更多推荐
所有评论(0)