- activity中OnAttachedWindow生命周期在OnResume之后,所以对长宽获取在推荐在OnAttachedWindow中进行。
- onDetachedWindow是在OnDestroy之后调用的,按返回键会运行,可是按home键不会运行。
- 对于xml中的fragment标签仅仅能是android.support.v4包里面的fragment及继承自该类的子类,否则会报 "binary XML file line #6: Error inflating class fragment"错误,假设要使用3.0以上版本号的fragment 建议是在xml里面定义一个容器。然后用FragmentTransaction操作容器,加入fragment。
- TextView的singeLine会使自己定义背景的颜色失效。
- 对于EditText控制可编辑性最好的解决的方法就是设置enable的值来控制,比通过代码调整或者替换控件的方法要好的多。
- 监听键盘的弹起和隐藏事件,推荐是在AndroidManifest.xml对activity的WindowSoftInputMode中设置adjustPan或者adjustResize。详细看哪种适合你的使用环境,然后注冊监听ViewTreeObserver.OnGlobalLayoutListener,在重载方法onGlobalLayout中推断弹起还是隐藏。
演示样例代码例如以下:
private class MyStateListener implements ViewTreeObserver.OnGlobalLayoutListener {
private final View mDecorView;
private final CameraFragment mFragment;
private int mFrameHeight = 0;
private boolean mKeyboardShow;
private final Rect mVisibleDisplayFrame; IMEStateListener(CameraFragment paramView, View view) {
this.mFragment = paramView;
this.mDecorView = view;
this.mVisibleDisplayFrame = new Rect();
} @Override
public void onGlobalLayout() {
this.mDecorView.getWindowVisibleDisplayFrame(mVisibleDisplayFrame);
int i = this.mVisibleDisplayFrame.height();
if (this.mFrameHeight == 0) {
this.mFrameHeight = i;
}
if (i < this.mFrameHeight) {
this.mKeyboardShow = true;
} else if (this.mKeyboardShow) {
this.mKeyboardShow = false;
mHandler.sendEmptyMessage(KEYBOARD_HIDE);
}
}
}
相关文章
- [转]-Android Studio 快捷键整理分享-SadieYu
- Android Studio Profiler使用心得 检测内存泄露问题
- 关于Android平台的搭建的心得---汪永骏
- Android Studio设置启动时可选最近打开过的工程
- 【知识整理】生成Android(安卓)app证书的keystore文件
- 整理下 android 保活 防被杀 守护进程
- 1、了解计算机与操作系统发展阶段 2、选择一个具体的操作系统,结合计算机与操作系统的发展阶段,详细了解其渊源、发展过程、趋势,整理成简洁美观的图文博客发布。 Windows Mac os x Unix Linux Android 等。
- Android LCD整理二:mtk平台LCD流程分析(LK部分)
- 【开源框架】Android之史上最全最简单最有用的第三方开源库收集整理,有助于快速开发,欢迎各位网友补充完善
- Android 视频回放时间轴,支持缩放,拖动,自动移动到最近视频开始时间