Android状态栏与页面顶部内容重合解决方案
来源:互联网 发布:php在线答题系统 编辑:程序博客网 时间:2024/06/04 01:25
在项目的开发过程中 , 发现创建activity界面后 , 界面顶部的返回按钮被状态栏遮挡住一部分 , 在点击返回的时候,很难触发点击事件,页面也不太美观,话不多说,直接上代码.
计算状态栏高度的工具类:
public class StatusBarUtil { //获取状态栏高度 public static int getStatusBarHeight(Context context) { Class<?> c = null; Object obj = null; Field field = null; int x = 0, statusBarHeight = 0; try { c = Class.forName("com.android.internal.R$dimen"); obj = c.newInstance(); field = c.getField("status_bar_height"); x = Integer.parseInt(field.get(obj).toString()); statusBarHeight = context.getResources().getDimensionPixelSize(x); } catch (Exception e1) { e1.printStackTrace(); } return statusBarHeight; }}
在activity中重写onWindowFocusChanged()方法:
@Override public void onWindowFocusChanged(boolean hasFocus) { super.onWindowFocusChanged(hasFocus); //设置第一个view距离状态栏的高度; LinearLayout.LayoutParams lp = (LinearLayout.LayoutParams) rlLinearLayout.getLayoutParams();//rlLinearLayout为遮挡住的页面布局LinearLayout int top = StatusBarUtil.getStatusBarHeight(this);//获取状态栏高度 lp.topMargin = top;rlLinearLayout.setLayoutParams(lp);
}
总结:
解决该问题的方案主要是:计算出状态栏的高度 , 然后用代码的形式将页面顶部布局向下移状态栏的高度 , 解决方案还是比较简单的.
阅读全文
0 0
- Android状态栏与页面顶部内容重合解决方案
- Android 页面顶部状态栏隐藏和透明
- android 去掉顶部状态栏
- android 去掉顶部状态栏
- android 去掉顶部状态栏
- android 顶部状态栏遮盖
- 【iframe与父页面重合】
- android 自定义顶部状态栏颜色
- Android中隐藏顶部状态栏:
- Android 改变顶部状态栏的颜色
- android 获取顶部状态栏 信息 高度
- Android沉浸式状态栏顶部着色
- Android中自定义顶部状态栏颜色
- android应用顶部状态栏学习笔记
- Android设置顶部状态栏的颜色
- Android学习--系统顶部状态栏透明化
- Android获取系统顶部状态栏(StatusBar)与底部工具栏(NavigationBar)的高度
- Android 界面横竖屏切换 顶部状态栏(标题栏)显示与隐藏
- 流程图插件
- Spring Boot 启动后,立马可以执行的方法 (implements CommandLineRunner)
- Dash:程序员的的好帮手
- WPF ListViewItem ControlTemplate command 不执行问题
- Dubbo:来自于阿里巴巴的分布式服务框架
- Android状态栏与页面顶部内容重合解决方案
- PL/SQL各个窗口的区别(转)
- 《Spark 官方文档》Spark SQL, DataFrames 以及 Datasets 编程指南
- Java --网络编程
- Cookie/Session机制详解
- 第四周 建立单链表
- 第二周项目二-多文件组织(如何将一个文件的代码多文件组织)
- Go conversion between struct and byte array
- Spark运行模式