• appFramework在三星某些机型上的兼容问题


    有个问题困扰了安卓哥好几天

    一个带有fixed抬头的列表页,在向上swipe的时候,有一定概率会把整个画面滚动上去,就连fixed的部分也移动了。

    于是哥觉得是webview的问题,找了各种选项,禁用所有滚动,结果连appframe的scroll也被禁用了。

    第一天他找我的时候我就怀疑是那个#afui 上本来静态100%高度的style被js自动写成例如800px的时候出现了问题。

    这个高度会根据不同设备计算出来不同。

    一般的小米,索尼,都没出问题。

    用模拟三星的AVD以及测试部门不知道谁的三星手机会出现上述bug

    第一天安卓哥问我的时候,我就怀疑到了这个高度,并且建议了如果高度计算不准确,我们就用js强制写入一次高度。

    下班前他在用logger查看这些高度,第二天说页面的高度没有问题。

    于是我又怀疑到是否偶尔会触发这种滚动是因为触发了不同的事件,比如drag会引起这个问题,touch不会,如果是这样就屏蔽某种事件。

    第二天这个问题还是没解决,一直在webview以及事件方面努力。

    第三天,组长质问起来,然后尝试在页面底部加上了一个footer。

    给footer加上色块发现,虽然整个画面滑了出去,footer与实际的app ico list 数目结束的位置之间还是长出一大截,也就是说footer不存在的时候,这个部分也是撑出了多余高度。

    那么这个div的高度绝对是不正确的。

    如果只是scroller 内部内容的高度不对,还不会有问题,但是现在可能是#afui的高度不正确,超出了设备所能容纳的高度,所以才会整体滑出。

    那么解决方法有两个,我尝试在#afui上使用position : fixed 定位,解决了整体滑出的问题。

    但是,仍然可以发现,最后一个app ico 被遮挡,也就是这样提示了我们,这个画面的高度绝对是超出了window高度。

    安卓哥对appFramework的语法不熟悉,所以一直没有按照我的建议尝试成功,然后我告诉他怎么获取window高度,怎么赋给#afui,问题解决了!

    真不容易,以后同类问题一定要举一反三!

  • 相关阅读:
    用C#做成的程序如何打包部署,在其他PC机运行
    ZeroMQ——一个轻量级的消息通信组件 C#
    Google Protocol Buffers 快速入门(带生成C#源码的方法)
    【转】如何一直保持测试工作的热情
    【转】关于什么是测试专家的讨论
    释放对某端口的占用
    Android端手机测试体系
    【转】减少缺陷漏测的系统方法体系思考(10年经验的反思)
    【转】3种类型的测试专家之路选择
    【转】手机应用软件测试点汇总
  • 原文地址:https://www.cnblogs.com/haimingpro/p/3981613.html
Copyright © 2020-2023  润新知