Andorid 开发中一定会遇到的小问题

image.png

前言

在开发Android时,经常会遇到千奇百怪的小问题,所以一个个记录下来,方便日后翻看,也希望能够帮到其他开发者。

目录

  • 国际化时 Button 字符自动大写
  • View 在横屏模式下(虚拟按键)位置偏移

国际化时 Button 字符自动大写

复现

在英语环境下,按钮上的字符全都自动大写了,必须注意到的是,作者并未在样式中规定全部大写,这是因为:在 Andorid 6.0 以上的机型中,主题默认 Button 英文字符全部大写。

    android:textAllCaps="ture"

image.png

解决方案

在样式中修改

    android:textAllCaps="false"

View 在横屏模式下(虚拟按键)位置偏移

复现

View 位置偏移的问题,我在上篇博客中也有提及。我发现在华为手机等具有虚拟按键的机型上都会出现此问题,而且便宜的距离查了很多资料也没有找到触发的原因。如果有朋友知道的话,咱们可以交流一下。

image.png

解决方案

在代码中动态设置位置就可以完美解决这个问题

image.png


    // 解决虚拟按键横屏,View 向右偏移
    private void setUpShow(View view) {
        // 竖屏不做处理
        if (VERTICAL_SCREEN == getResources().getConfiguration().orientation) {
            return;
        }
        // 横屏状态
        else if (HORIZONTALL_SCREEN == getResources().getConfiguration().orientation) {
            // 检测是否有虚拟按键
            if (checkDeviceHasNavigationBar(this)) {
                view.setTranslationX(- 2*(int)getResources().getDimension(RUtils.dimen(this, "tutu_account_frame_padding")));
            }
        }
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值