李钊
李钊
  • 发布:2023-09-09 11:27
  • 更新:2023-09-09 11:48
  • 阅读:569

【报Bug】安卓动态设置底部安全区域颜色和跳转冲突,会阻塞跳转

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: win10

HBuilderX类型: 正式

HBuilderX版本号: 3.8.12

手机系统: Android

手机系统版本号: Android 11

手机厂商: 小米

手机机型: 小米8

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

示例代码:
复制代码//安卓设置底部安全区域颜色  
                var Color = plus.android.importClass("android.graphics.Color");  
                plus.android.importClass("android.view.Window");  
                var mainActivity = plus.android.runtimeMainActivity();  
                var window_android = mainActivity.getWindow();  
                window_android.setNavigationBarColor(Color.parseColor('#FFFFFF'));  
                uni.navigateTo({  
                    url: '/pages/moreReadPage/moreReadPage',  
                    success: res => {},  
                    fail: () => {},  
                    complete: () => {}  
                });

操作步骤:

点击跳转时设置底部颜色,返回后再跳转跳转不了

预期结果:

应该不要阻塞跳转

实际结果:

阻塞了,跳转错乱

bug描述:

复制代码//安卓设置底部安全区域颜色  
                var Color = plus.android.importClass("android.graphics.Color");  
                plus.android.importClass("android.view.Window");  
                var mainActivity = plus.android.runtimeMainActivity();  
                var window_android = mainActivity.getWindow();  
                window_android.setNavigationBarColor(Color.parseColor('#FFFFFF'));  
                uni.navigateTo({  
                    url: '/pages/moreReadPage/moreReadPage',  
                    success: res => {},  
                    fail: () => {},  
                    complete: () => {}  
                });
2023-09-09 11:27 负责人:无 分享
已邀请:
李钊

李钊 (作者) - 李钊

复制代码<template>  
    <view>  
        <page-head :title="title"></page-head>  
        <view class="uni-padding-wrap uni-common-mt">  
            <view class="uni-btn-v">  
                    <button type="default" @click="navigateTo">跳转到新页面</button>  
                <navigator url="redirect/redirect?title=redirect" open-type="redirect" hover-class="other-navigator-hover">  
                    <button type="default">在当前页打开</button>  
                </navigator>  
                <navigator v-if="!hasLeftWin" url="/pages/tabBar/extUI/extUI" open-type="switchTab" hover-class="other-navigator-hover">  
                    <button type="default">跳转tab页面</button>  
                </navigator>  
            </view>  
        </view>  
    </view>  
</template>  
<script>  
    import { mapState } from 'vuex'  
    export default {  
        data() {  
            return {  
                title: 'navigator'  
            }  
        },  
        computed: {  
            ...mapState({  
                hasLeftWin: state => !state.noMatchLeftWindow  
            })  
        },  
        methods:{  
            navigateTo(){  
                //安卓设置底部安全区域颜色  
                var Color = plus.android.importClass("android.graphics.Color");  
                plus.android.importClass("android.view.Window");  
                var mainActivity = plus.android.runtimeMainActivity();  
                var window_android = mainActivity.getWindow();  
                window_android.setNavigationBarColor(Color.parseColor('#FFFFFF'));  
                uni.navigateTo({  
                    url: 'navigate/navigate?title=navigate',  
                    success: res => {},  
                    fail: () => {},  
                    complete: () => {}  
                });  
            }  
        }  
    }  
</script>  

使用官方的uniapp项目测试也是一样跳转不了

  • 海角

    你这个moreReadPage是nvue页面吧 换vue试试 或者不要在方法里面写

    2024-11-01 16:25

要回复问题请先登录注册

  • 标题 / 粗斜体
  • 代码片段
  • 超链接 / 图片 / 视频
  • 列表 / 引用

文章内容较多时,可以用标题分段 :

## 大标题 
### 小标题

斜体 / 粗体 :

**粗体** 
*斜体*
***粗斜体***

代码片段 :

``` javascript
代码片段
```

超链接 :

[链接文字](链接地址) 例: [百度](http://www.baidu.com)

图片 :

![图片说明](图片地址) 例: ![百度logo](http://www.baidu.com/img/bdlogo.gif)

视频 :

!![视频说明](视频地址) 例: !![优酷视频](http://youku.com)

有序列表 :

1. 123
2. 123
3. 123

无序列表 :

- 123
- 123
- 123

引用 : ( 双回车后结束引用 )

> 引用内容
引用内容
引用内容