将activity的显示区域扩展至状态栏

这篇博客介绍了如何在Android应用中将Activity的显示区域扩展到状态栏,从而实现内容填充到状态栏下方的效果。文章通过获取状态栏高度来实现这一功能。
摘要由CSDN通过智能技术生成

先获取状态栏的高度:

statusHeight

方法如下:

<span style="white-space:pre">	</span>Class<?> c = null;
        Object obj = null;
        java.lang.reflect.Field field = null;
        int x = 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());
            statusHeight = IFGAppParams.getAppContext().getResources().getDimensionPixelSize(x);
            return statusHeight;
        } catch (Exception e)
        {
            e.printStackTrace();
        }
        return statusHeight;

然后对DecorView 增加statusHeight高度的同时,向上滑动statusHeight即可:

<span style="white-space:pre">	</span>getWindow().setLayout(LayoutParams.MATCH_PARENT, ScreenUtil.height
                        + statusHeight);
        getWindow().getDecorView().scrollTo(0, statusHeight);


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值