Masonry UIScrollView autolayout 的一个奇特的问题
事情是这样的。。。。
我一个工程里 一直使用的 masonry 做autolayout,有个gesturerReconizer的bug,找了很久,发现很奇怪一个现象:
我的某个view 是这样的
|--------------------------------------|
|UIViewController.view |
| |----------| |--------------------|
| |UIView1-| |UIScrollView |
| |----------| | |
| | |-------------| |
| | | UIView2 | |
| | |-------------| |
| |--------------------|
|------------------------------------------
UIScrollView 的 contentView 就略去了
按理说,我应该添加view2到 uiscrollview里,但是不小心写错了,加到了最外层的view里:
[self.view addSubview:self.view2];
然后添加了若干constraint
[self.view2 makeConstraints:^(MASConstraintMaker *make) {
make.top.equalTo(self.orderSectionView.bottom).offset(14);
make.height.equalTo(@200);
make.left.and.right.equalTo(_rightDownScrollContentView);
}];
关键是,一开始竟然一切顺利,跑成功了!!!!位置也对,就像我把它加入进了 scrollView里一样,还能顺着滑动!!
但是我用 原始的 addConstraint:xxx option 就会有很多unsatisfied constraint的msg产生。。。
但是这个view2的tap事件处理一直有问题。
两个理解:
1. 虽然view的层级不对,但是constaint是可以满足的,当scroll的时候,其依赖的view的位置变了,所以它跟着滑动
2.系统bug
Masonry UIScrollView autolayout 的一个奇特的问题的更多相关文章
- 【原】Masonry+UIScrollView的使用注意事项
[原]Masonry+UIScrollView的使用注意事项 本文转载请注明出处 —— polobymulberry-博客园 1.问题描述 我想实现的使用在一个UIScrollView依次添加三个UI ...
- UIScrollView上面放一个UIScrollView或者UITableView拖动时候 View出现一闪一闪解决办法
在项目中发现一个问题: 创建一个UIScrollView 上面放一个scrollView或者TableView,拖动scrollview或TableView 画面出现一闪一闪的情况. 解决办法设置一下 ...
- iOS:在tableView中通过Masonry使用autolayout在iOS7系统出现约束崩溃
一.出现崩溃情景: 给tableView创建一个头视图,也即tableHeaderView,然后使用Masonry并切换到iOS7/7.1系统给tableHeaderView中的所有子视图添加约束,此 ...
- 关于Masonry框架(AutoLayout)的用法--面向初学者
Masonry作为目前较为流行的自动布局第三方框架,简单易用,大大减少了程序员花在UI布局和屏幕适配的精力与时间. 1 基本用法 1.1 事例1: 图1-1 // 首先是view1自动布局 [view ...
- UIScrollView中添加一个视图,实现让其始终固定在某个位置
ScrollView中添加一个视图,实现让其始终固定在某个位置,如最底部的位置.方法是自定义一个继承UIScrollView,重写它的layoutSubviews方法.代码如下: #import &q ...
- VB6 变量定义作用域的一个奇特形式
C#或JAVA 下面的i定义是只会限定在if 条件块里的: if (1 == 2) { int i = 000; } else { i = 111;// 错误,未定义. } i = 222;//错误 ...
- scala语言中的case关键字在spark中的一个奇特使用
package com.spark.demo import com.spark.demo.util.SparkUtil import org.apache.spark.rdd.RDD import s ...
- Python 一个奇特的引用设定
def f(x): print 'original' if x > 0: return f(x-1) return 0 g = f def f(x): print 'new' return x ...
- Masonry介绍与使用实践:快速上手Autolayout
1 MagicNumber -> autoresizingMask -> autolayout 以上是纯手写代码所经历的关于页面布局的三个时期 在iphone1-iphone3gs时代 w ...
随机推荐
- hdu 1209 Clock(排序)
题意:按钟表的时针.分针的夹角对5个时间进行升序排序,输出第3个时间 思路:排序 注意:若夹角相同,则按时间进行升序排序 #include<iostream> #include<st ...
- POJ1226(strstr)
Substrings Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 13348 Accepted: 4722 Descr ...
- 比利牛斯獒犬 flask web
1. 使用 session.get('name') 直接从会话中读取 name 参数的值.和普通的字典一样,这里使用 get() 获取字典中键对应的值以避免未找到键的异常情况,因为对于不存在的键, g ...
- C语言指针入门知识
C语言指针往往是C语言学习过程中最困难的地方, 最近重新理解了一下C语言的指针知识, 在此整理一下, 如果有错误请留言指正. 对于刚入门的人来说, 指针涉及方方面面, 从简单的数组到结构体, 都会用到 ...
- PDF上添加水印
1.整合jar: itext-asian-5.2.0.jar,itextpdf-5.5.10.jar,iTextAsianCmaps.jar 下载:itext的整合jar包 2.使用方法: publi ...
- 1、css选择器
一.CSS rgb颜色对照表:https://www.114la.com/other/rgb.htm 1.在标签上设置style属性 <!DOCTYPE html> <html la ...
- shell脚本自动部署nignx反向代理及web服务器,共享存储
#!/bin/bash systemctl status nginx var=$? ] then yum install epel-release -y ] then echo "epel库 ...
- ASP.NET Core快速入门_学习笔记汇总
第2章 配置管理 任务12:Bind读取配置到C#实例 任务13:在Core Mvc中使用Options 任务14:配置的热更新 任务15:配置框架设计浅析 第3章 依赖注入 任务16:介绍- 任务1 ...
- 参考手册(html css)
HTML CSS DOM XML DOM XML DOM Document JavaScript JavaScript RegExp JSP
- 洛谷 - P3786 - 萃香抱西瓜 - 状压dp
重构一下就过了,不知道之前错在哪里. #include<bits/stdc++.h> using namespace std; typedef unsigned long long ull ...