精华内容
下载资源
问答
  • iOS开发:iOS11安全区域适配问题

    千次阅读 2018-01-11 11:44:34
    iOS11安全区域适配问题

           iPhone X刚发布的时候,适配新尺寸有好多人会不适应,颠覆了之前的常识,不过过了不久大家都熟悉之后,就适应和解决了iPhone X的齐刘海带来的开发问题。

           在这里我只分享一下,iOS 11下App开发过程中tableview的内容下移20pt或者下移64pt的适配问题,造成下移原因是iOS 11之后,controller的automaticallyAdjustsScrollViewInsets属性被废弃,导致tableview如果超出安全区域时系统自动调整了SafeAreaInsets值,从而影响了adjustedContentInset的值。

           安全区域的概念是iOS 11出来之后新提出来的,就是系统自动调整tableview内容偏移量,根据安全区域来调整的,如果你新建xib视图控制器,你会发现,有一个安全区域的范围,那就是安全区域。安全区域定义了View中可视区域的部分,这样是为了保证不被系统的状态栏、父试图提供的View覆盖。每个View都可以改变安全区域的大小,包括控制器controller也一样可以,使用additionalSafeAreaInsets去扩展安全区域。

    分享一个本人开发时候遇到的情况,具体如截图所示:



           这个是tableview的区头和cell之间的重叠问题,其实还是安全区域引起的,其实解决这个问题很简单,我这里使用的是xib创建的区头View,直接再xib里面修改即可。具体如下图所示:



           如果tableview提前设置了automaticallyAdjustsScrollViewInsets = YES,那么不会发生问题,所有情况都是由系统来调整内容的偏移量。tableViewframe超出安全区域范围时,系统会自动调整内容的位置,SafeAreaInsets的值会不为0,于是就会影响tableViewadjustContentInset值,最后会影响tableView的内容展示效果,导致tableViewcontent下移了SafeAreaInsets的距离。如果SafeAreaInsets值为0时,是正常的情况。

            解决方法有三种:1.重新设置tableView的contentInset值,来抵消SafeAreaInset的值,原因是因为:  内容下移偏移量 = contentInset + SafeAreaInset;2. 设置tableView的contentInsetAdjustmentBehavior属性(而且contentInsetAdjustmentBehavior的属性,也是用来取代automaticallyAdjustsScrollViewInsets属性的);3. 通过设置iOS 11新增加的属性addtionalSafeAreaInset来设置;


            这里分享一下适配iPhone X的约束的宏定义:

    #define SCREEN_WIDTH              [UIScreen mainScreen].bounds.size.width

    #define SCREEN_HEIGHT             [UIScreen mainScreen].bounds.size.height

    //iPhone_X layout

    #define iPhone_X                 (SCREEN_HEIGHT == 812.0)

    #define Status_H                 (iPhone_X ? 44 : 20)

    #define NavBar_H                  44

    #define Nav_Height                (Status_H + NavBar_H)

    #define Tab_Height                (iPhone_X ? 83 : 49)

    #define ScaleW(value)             (value/375.0 * SCREEN_WIDTH)

    #define iPhoneX_Bottom_Margin     20

    #define Bottom_Margin             (iPhone_X ? -20 : 0)

    #define BannerH                   ScaleW(186.0f)


            

    想要了解更多内容,欢迎关注本人微信公众号,可以进一步谈论交流!


    展开全文
  • 连通区域合并问题

    千次阅读 2012-02-29 17:05:31
    这段时间一直有个问题没有合理的解决,就是对于一帧进行运动前景提取之后,得到的前景二值模板,提取出模板上的连通区域,统计连通区域的一些参数,判断是否要对某些连通区域进行合并的操作。 这个问题直到合并之前...
    这段时间一直有个问题没有合理的解决,就是对于一帧进行运动前景提取之后,得到的前景二值模板,提取出模板上的连通区域,统计连通区域的一些参数,判断是否要对某些连通区域进行合并的操作。

    这个问题直到合并之前的部分都实现了,合并的时候没有好办法。

    前面我是这样做的

    a. 用下面的代码找到前景模板的轮廓序列,head指向轮廓链表的第一个轮廓。

    CvContourScanner scanner = cvStartFindContours(pFrImgcopy,stor,sizeof(CvContour),CV_RETR_EXTERNAL,CV_CHAIN_APPROX_SIMPLE);
    c=cvFindNextContour(scanner);
    head=cvEndFindContours(&scanner);

    b. 统计每个轮廓的重心和颜色参数,保留的有效轮廓个数为Num个


    c. 判断之后 把判断的结果存在矩阵MergeMask里,MergeMask 是 Num*Num 大小,初始化为 int类型 全0。

        e.g. 轮廓1,2满足合并条件: MergeMask[1][2]=1;

        有这样的情况, 轮廓1,2满足合并条件,已标记; 轮廓1,3满足不合并条件,未标记; 轮廓2,3满足合并情况,已标记。 这个时候轮廓1,2,3都要进行合并。 所以要对MergeMask作进一步的整理。

        我采用的方法就是扫描MergeMask, 把可以合并到一起的轮廓id都标注在id最小的那个轮廓所对应的行。

        这个整理的方法对之后找到轮廓合并很不方便,因为在轮廓序列和实际的图片上这些联通区还是没有连通起来的。需要对应着每一个轮廓id顺着轮廓的链表进行查找,记录下来所有要合并的轮廓的外接矩形的最左最上最右最下,建立新的合并联通区的“外接”矩形。每次要合并的轮廓个数又不一样,操作起来比较麻烦,速度也变差。

         在考虑改进的方法。不知道前人是怎样实现类似问题的,希望大家能给我一些建议,谢谢。


    展开全文
  • iPhoneX安全区域引发的问题(Safe Area) 瞧一瞧 LeetCode题解:Gitbook版本传送门 前端笔记:Gitbook传送门 目录 什么是安全区域? 预留出Home Indicator指示条 简单总结 一、什么是安全区域? 最近正在开发小...
    
    

    iPhoneX安全区域引发的问题(Safe Area)

    瞧一瞧


    目录

    1. 什么是安全区域?
    2. 预留出Home Indicator指示条
    3. 简单总结

    一、什么是安全区域?

    最近正在开发小程序相关的需求时,遇到了一个问题——ios高版本的安全区域,即iPhoneX及以上拥有的“刘海儿”等可滑动区域会与你开发的内容重合。

    ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200408182921652.png
    幸运的是,在小程序上我们只需要考虑底部的底部Home Indicator上滑指示条
    在这里插入图片描述
    注意,官方不推荐我们粗暴的将这段区域永久的覆盖,例如压黑边隐藏设备的圆角、刘海、指示条。
    在这里插入图片描述
    同样官方推荐避免将交互元素放在屏幕底部或者角落。 因为从屏幕底部上划被用户激活Home指示条并回到主屏或进入多任务切换,且系统会取消你在这个区域布局的手势。而屏幕角落区域很难触控。
    在这里插入图片描述

    二、预留出Home Indicator指示条

    方法一(预留固定的距离)

    小程序文档上,会提供我们获取系统信息的API,之后我们要做的是:

    • 判断需要特殊处理的系统型号
    • 添加样式
    if(iPhoneX及以上)
    	// do something
    

    方法二(ios11 增加新特性)

    和我遇到一样问题的同事告诉了我这一特性:

    为了应对刘海屏幕,苹果也给出了响应的策略,如下:

    • safe-area-inset-left:安全区域距离左边边界距离
    • safe-area-inset-right:安全区域距离右边边界距离
    • safe-area-inset-top:安全区域距离顶部边界距离
    • safe-area-inset-bottom:安全区域距离底部边界距离

    具体数值:

    • safe-area-inset-left :一般情况下是 0
    • safe-area-inset-right:一般情况下是 0
    • safe-area-inset-top:在刘海全屏的时候 top 为 44px
    • safe-area-inset-bottom:刘海全屏的条件下是 34px

    css 函数 env() 和 constant()

    这两个函数都是 webkit 中 css 函数,可以直接使用变量函数,只有在 webkit 内核下才支持

    env 函数 constant 函数
    必须在 ios >= 11.2 才支持 必须 ios < 11.2 支持

    例如:

    兼容前后版本代码,注意顺序不能变
    padding-top: 88px;
    padding-bottom: 100px;
    padding-bottom: calc(100px +  constant(safe-area-inset-bottom));
    padding-bottom: calc(100px +  env(safe-area-inset-bottom));
    

    最后:
    env 和 constant 只有在 viewport-fit=cover 时候才能生效。

    三、@supports 隔离兼容样式

    可以使用 @supports 来隔离兼容样式,当浏览器支持

    • bottom: constant(safe-area-inset-bottom)
    • bottom: env(safe-area-inset-bottom)

    bottom-button类就会新增margin-bottom的样式

    @supports (bottom: constant(safe-area-inset-bottom)) or (bottom: env(safe-area-inset-bottom)) { 
    	.bottom-button {
        	margin-bottom: constant(safe-area-inset-bottom);
            margin-bottom: env(safe-area-inset-bottom);  
        }
    }
    

    三、总结

    在H5中,安全区域只是其中一个问题,只要知道它的特性,它存在的意义,就可以“对症下药”。

    苹果对状态栏做了很好的优化,再也不用担心各种状态导致的高度变化给UI设计带来的影响*

    • Home指示条除非被动查看消失以外,一般都会常驻在界面上,不能自定义,且需要给其留足空间,虽然苹果提供了边界保护允许开发者在不得已情况下使用底部上划功能,但是不建议用。
      在这里插入图片描述
    • 苹果不推荐通过压黑边或其他装饰的方式处理刘海和圆角以及Home指示条。
      在这里插入图片描述
    • 苹果不推荐将交互元素放在屏幕底部或者角落,以及各种奇怪的不对称布局。
      在这里插入图片描述
    • 苹果推荐将核心内容和操作放到安全区以内,但对于列表和图片集等可以滑动的控件苹果推荐延伸到屏幕底部。
      在这里插入图片描述
    • 为了获得更好的沉浸体验,苹果推荐无交互的背景和场景需要铺面全屏

    参考链接

    如何评价新版 iPhone X 的设计规范?
    Apple Developer

    展开全文
  • 在添加受信任站点时,出现错误提示“指定的站点已存在于另一区域中。请在添加当前区域之前从那个区域中删除该站点”。但是在受信任站点和受限制站点均未发现此站点地址,查看IE所有配置,均未发现此站点信息。怎么回...
     
    

    在添加受信任站点时,出现错误提示“指定的站点已存在于另一区域中。请在添加当前区域之前从那个区域中删除该站点”。但是在受信任站点和受限制站点均未发现此站点地址,查看IE所有配置,均未发现此站点信息。怎么回事呢?没办法,只能去查注册表了!终于在注册表中发现问题所在!
    Hkey_Current_User\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Ranges

    在此区域,查找Range1、Range2、Range3等分支,这些就是受信任站点的位置。删除所有Range分支,然后在IE中重新添加信任站点!成功!!

    展开全文
  • MUI scroll(区域滚动)问题

    千次阅读 2017-03-30 18:08:59
    MUI scroll(区域滚动)问题 1)在手机APP上,我们需要进行组件的滑动或者定位,可能会出现滑动方法不起作用。 例如: 功能:滚动到特定位置 方法:scrollTo( xpos , ypos [, duration] ) 案例:mui('.mui-scroll...
  • Ctrl+F3,定义名称,将你选中的sheet1的区域定义为一个自己设定的名称,然后在sheet2的数据有效性里填入这个名称。 本文转自左正博客园博客,原文链接:...
  • ,当然不存在数据竞争问题(如果局部变量是一个reference引用类型,它引用的对象在Java堆中可被各个线程共享,但是reference引用本身在Java栈的局部变量表中,是线程私有的)。为了获得较高的执行效能,Java内存模型...
  • 深度学习笔记(41) 候选区域

    万次阅读 2019-09-03 23:20:08
    无对象区域浪费时间问题、候选区域、Faster R-CNN
  • 本文主要讲述Windows通知区域的有趣的历史和结构,从而方便之后解决“僵尸”图标问题
  • 原始GAN存在问题

    千次阅读 2018-12-07 14:56:17
     说明从两个分布采样的数据没有重合区域,但是其实两组数据之间有重合,只是判别器太强了,可以找到一条线将两组数据分开,如图所示。 图上的点是两个分布的采样数据,因为我们并不知道分布,只能对分...
  • 但是,物联网很多技能仍然存在问题,因此未来一年内人们需要关注物联网的四个关键领域:物联网的硬件设计、低功耗远程通讯、人工智能集成物联网,以及物联网设备的平安。 物联网的硬件设计 从社会发展角度来看,...
  • Java内存区域

    千次阅读 多人点赞 2019-10-30 20:42:05
    概述 对于 Java 程序员来说,在虚拟机自动内存管理机制下,不再需要像 C/C++程序开发程序员这样为每一个 new 操作去写对应的 delete/free 操作,不容易出现内存泄漏和内存溢出问题。...运行时数据区域 Jav...
  • ospf的特殊区域

    万次阅读 2018-03-10 17:41:52
    ospf的Stub区域不接受五类LSA,也就不存在四类LSA。之所以设置Stub区域,是因为有些路由器性差,不能接受大量的LSA,为了减少负载,过滤掉四类和五类LSA,但是过滤掉五类和四类LSA会导致一个区域无法访问外部路由,...
  • JVM的内存区域划分  学过C语言的朋友都知道C编译器在划分内存区域的时候经常将管理的区域划分为数据段和代码段,数据段包括堆、栈以及静态数据区。那么在Java语言当中,内存又是如何划分的呢?  由于Java程序是...
  • 大家都知道,非线程安全问题存在于“实例变量”中,方法内部的私有变量,则不存在线程安全问题,这是为什么呢? 因为Java运行时数据区,虚拟机栈或者本地方法栈(执行方法所在的内存区域)是线程私有的,每个线程都...
  • 但在公安视频监控系统建设中,存在的几大问题也不容忽视。本文就此几大问题做出规划和调整,以使公安视频监控系统更好、更稳定的服务于国家安全,在保障人民生命财产等方面起到至关重要的作用。 一、目前公安视频...
  • 为了在智慧营区中演示区域入侵等告警事件,需要使用某个摄像头监控某个指定区域,因当前摄像头数量不足,使用了球机设备,即球机1作为区域入侵的事件来源,球机1的ip为192.168.1.108,在使用时,需要为球机1这个设备...
  • Java包装类对象比较中存在问题

    千次阅读 2017-07-14 22:21:48
    本文章以Integer包装类为例,讲解一些包装类比较过程中存在问题。 首先看一段代码: Integer i1 = 10; Integer i2 = 10; System.out.println(i1 == i2);//true Integer i3 = 1000; Integer i4 = 1000;
  • 问题:  OpenCV 2中使用Mat图像数据进行ROI提取子图像的操作 代码: int main() { // Mat big = Mat::zeros (400, 600, CV_8U); if (!big.empty()) { Rect roi (150, 100, 300, 200); Mat s
  • 当你的DNS服务出了问题时,或某些区域被误删除时,如何在域控制器上重建AD集成dns区域?1. 控制面板->管理工具,打开dns管理器,展开正向搜索区域,右键单击domain.com区域,选择删除,在提示对话框中选择“是”;...
  • ospf非骨干区域为什么连接骨干区域

    千次阅读 2015-11-21 12:28:06
    前些天同事离职,顺便问了问面试时候的问题,其中一个ospf非骨干区域为什么必须连接骨干区域。这个问题蛮经典,涉及到ospf环路问题。其中ospf中lsa,lsa由LS type、link state id、adverting router标识出。非骨干...
  • ospf四大区域

    千次阅读 2019-08-18 10:48:13
    一、四大特殊区域:stub area 、totally stub area ------T-stub、nssa area、nssa totally area ------T-nssa 二、stub area:末节区域区域0相连的区域。并且这个区域没有连接任何其它OSPF区域以及其路由协议。 ...
  • 多个线程共享一块内存区域,在不加任何保护情况下对其操作就会出现异常结果,因为静态成员(static member)作为公共变量,就是放在共享内存区域的。  比如上面那个例子,如果我在方法中用了静态变量result,就会...
  • 通过无人机获取影像或三维模型辅助小区域大比例尺地形图的想法和问题 1.无人机应在尽可能短的时间之内飞完作业区域; 要求无人机要保养完善,随时可以飞,各元器件可以稳定工作,无人机及相机等等 2.应在两天后...
  • word转pdf时存在的一些问题

    万次阅读 2017-06-08 22:45:32
    2、在EDAs上传PDF文档时,经常会出现格式有问题,上传不成功的现象,这个主要是PDF文档字体嵌入的问题  (1)打开生成的PDF文档,点击“文件”—>“文档属性”—>“字体”:右边显示的字体中,有的字体后面括号...
  • OSPF区域类型

    千次阅读 2009-04-18 12:19:00
    末节区域和完全末节区域规则**所有的在末节区域里面的路由器最好被设置成stub router**在这个区域里面没有ASBR存在的**这个区域不能够有虚链路穿越的**区域0不能是末节区域或完全末节区域 2.末节区域(stub area)...
  • 透彻理解RPN: 从候选区域搜索到候选区域提取网络

    万次阅读 多人点赞 2018-10-30 16:33:47
     sliding window (受平移、尺度、比例影响)存在的根本问题就是漫无目的性的搜索, 恰恰region proposal algorithm就是为了解决这个问题。候选区域提取算法将图像作为输入,并输出边界框BoundingBox,该边界框对应...
  • 区域生长算法原理及MATLAB实现

    万次阅读 多人点赞 2016-03-13 21:20:57
    1. 基于区域生长算法的图像分割原理 数字图像分割算法一般是基于灰度值的两个基本特性之一:不连续性和相似性。前一种性质的应用途径是基于图像灰度的不连续变化分割图像,比如图像的边缘。第二种性质的主要应用途径...
  • OSPF区域与路由器角色详解

    千次阅读 2018-10-09 18:42:28
    首先我们需要知道为什么OSPF为什么需要区域,这个技术是为了解决什么问题存在的 超大型的网络如果扁平化,会使路由器负载过高,甚至超过路由器极限性能,虽然他的周期性泛洪与各种机制确实比RIP要优秀很多,但是...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 476,728
精华内容 190,691
关键字:

区域存在的问题