iOS UIScrollView使用Autolayout】的更多相关文章

最近项目在迭代更新的时候,需要在之前用Autolayout写的界面里添加一个button,添加完这个button后,iPhone5,iPhone4显示不全了.遇到整个问题后很自然就想到了用UIScrollView,很快就创建了一个占满全屏的UIScrollView,把之前所有的控件有[self.view addSubview:xxx]全部改成[self.scrollView addSubview:xxx],信心满满的点击了一个运行按钮,艹,居然滑动不了...... 重新调整了一下思路,解决了此问…
iOS学习笔记——AutoLayout约束 之前在开发iOS app时一直以为苹果的布局是绝对布局,在IB中拖拉控件运行或者直接使用代码去调整控件都会发上一些不尽人意的结果,后来发现iOS在引入了AutoLayout的同时也引入了约束.约束的存在使得iOS的AutoLayout相当于Android中的相对布局. 一个控件在父容器中的渲染出来,有两方面的要素,一个是大小(Size),另一个是位置(Location).其实每个空间的初始化方法都会那么一个initWithFrame,Frame就包含了…
iOS UIScrollView代理方法有很多,从头文件中找出来学习一下 //只要滚动了就会触发 - (void)scrollViewDidScroll:(UIScrollView *)scrollView; { //    NSLog(@" scrollViewDidScroll"); NSLog(@"ContentOffset  x is  %f,yis %f",scrollView.contentOffset.x,scrollView.contentOffse…
原文网址:http://www.cnblogs.com/HypeCheng/articles/4192154.html DECEMBER 07, 2013 学习资料 文章 Beginning Auto Layout Tutorial in iOS 7: Part 1 Beginning Auto Layout Tutorial in iOS 7: Part 2 Auto Layout Guide(官方) 前两篇文章对如何在xcode 5中使用autolayout讲得已经很详细了.我使用了一段时间…
原文  http://www.cocoachina.com/ios/20151221/14757.html 前言 自从写了 介绍Masonry 那篇文章以后 就一直有人对UIScrollView的那个例子不是很理解 UIView *container = [UIView new]; [scrollView addSubview:container]; [container mas_makeConstraints:^(MASConstraintMaker *make) { make.edges.e…
转载自:http://vit0.com/blog/2013/12/07/iosxue-xi-zhi-autolayout/ 学习资料 文章 Beginning Auto Layout Tutorial in iOS 7: Part 1 Beginning Auto Layout Tutorial in iOS 7: Part 2 Auto Layout Guide(官方) 前两篇文章对如何在xcode 5中使用autolayout讲得已经很详细了.我使用了一段时间autolayout的感觉是,一…
使用Storyboard编写UI,设置支持AutoLayout. 在其中的一个场景上,添加一个UIScrollView,在对应的代码里增加 - (void)viewDidLoad { [super viewDidLoad]; self.scrollView.contentSize = CGSizeMake(, ); } 调试,发现内容能显示,但是无法滚动. 经过网上搜索,发现是AutoLayout导致的问题.在支持AutoLayout后,系统会在ViewDidLoad之后,重新计算控件的一些值,…
前言 自从写了介绍Masonry那篇文章以后 就一直有人对UIScrollView的那个例子不是很理解 UIView *container = [UIView new]; [scrollView addSubview:container]; [container mas_makeConstraints:^(MASConstraintMaker *make) {     make.edges.equalTo(scrollView);     make.width.equalTo(scrollVie…
很长一段时间没有写博客了,最近在学习iOS开发,看了不少的代码,自己用UIScrollView和UIButton实现了水平滚动的效果,有点类似于今日头条的主界面框架,效果如下: 代码如下: MyScrollView.h #import <UIKit/UIKit.h> #import "MySegementView.h" @interface MyScrollView : UIView<UIScrollViewDelegate> - (instancetype)…
前言 NS_CLASS_AVAILABLE_IOS(2_0) @interface UIScrollView : UIView <NSCoding> @available(iOS 2.0, *) public class UIScrollView : UIView, NSCoding 移动设备的屏幕大小是极其有限的,因此直接展示在用户眼前的内容也相当有限.当展示的内容较多,超出一个屏幕时,用户可通过滚动手势来查看屏幕以外的内容.普通的 UIView 不具备滚动功能,不适合显示过多的内容,UIS…
自动布局:Autolayout 简介: 在以前的iOS程序中,是如何设置布局UI界面的? 经常编写大量的坐标计算代码 为了保证在3.5 inch和4.0 inch屏幕上都能有完美的UI界面效果,有时还需要分别为2种屏幕编写不同的坐标计算代码(即传说中的“屏幕适配”)   什么是Autolayout? Autolayout是一种“自动布局”技术,专门用来布局UI界面的 Autolayout自iOS 6开始引入,由于Xcode 4的不给力,当时并没有得到很大推广 自iOS 7(Xcode 5)开始,…
iOS 的 UIScrollView 可以说是十分强大,巧妙地运用它可以得到一些意想不到的效果.本文将举几个 ScrollView 不常见运用的例子. 自带信息应用 这个界面既可以上下卷动,也可以左右滑动拉出发送时间. P.S. 气死宝宝了,我做了一组精美的 gif,但是大小都超出简书限制…..无语,大家就脑补一下效果吧. 这个效果大体看一下就非常像一个很大的 ScrollView,可以四个方向都能滑动.但是 UITableView 只能上下滚动,硬要修改那就是大手术,不推荐这样做.因此我想到的…
转自:http://dadage456.blog.163.com/blog/static/30310744201491141752716 1.创建一个空白的UIViewController .将UIScrollView添加到UIView控件中,并设置UIScrollView针对父视图UIView的constraints(Leading/trailling/top/bottom = ) .最主要的来了,添加UIView控件到UIScrollView中.. ()并改名为ContentView....…
1.UIScrollView 减速 可能通过decelerationRate的属性来设置,它的值域是(0.0,1.0),当decelerationRate设置为0.1时,当手指touch up时就会很慢的停下来. 2.UIScrollView 如何判断停止滑动 这里停止滑动的意思要明确一下,有两种, 第一指手指停止滑动,因为手指停止滑动ScrollView. 当手指停止滑动时,iOS会调UIScrollView的delegate - (void)scrollViewDidEndDragging:…
总所周知 ,iOS 的UIScrollView是专门用来做缩放和分页用的,关于这方面的例子也很多了,但你们知道在放大的过程中 他做了些什么吗?  他的哪些东西会发生改变吗? 通过在一个项目中的小经历 ,我遇到了些问题,在这和大家分享一下. 在UIScrollView中添加View,然后实现他的代理 - (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView 就够了 先在来举个例子来说明本文的主题讨论问题:有一个UIScrol…
1.概述 在以前的iOS程序中,是如何设置布局UI界面的? (1)经常编写大量的坐标计算代码 (2)为了保证在3.5 inch和4.0 inch屏幕上都能有完美的UI界面效果,有时还需要分别为2种屏幕编写不同的坐标计算代码(即传说中的“屏幕适配”) 什么是Autolayout? (1)Autolayout是一种“自动布局”技术,专门用来布局UI界面的 (2)Autolayout自iOS 6开始引入,由于Xcode 4的不给力,当时并没有得到很大推广 (3)自iOS 7(Xcode 5)开始,Au…
首先UIScrollview包含自身的frame和contentSize二个部分.frame决定其展示给用户的可见区域,contentSize决定其整个内容的大小.如果frame的宽高小于contentSize,则UIScrollview可以在相应的方向滚动.UIScrollView中有个contentSize属性,如果内容大小是固定的,你可以直接设置contentSize.但是在自动布局约束中我们往往不知道其具体的大小,或者不想计算其大小,在这种情况下我们怎么实现UIScrollView的约束…
一.Storyboard中的UIScrollView使用自动布局 在使用storyboard和xib时,我们经常要用到ScrollView,还有自动布局AutoLayout,但是ScrollView和AutoLayout 结合使用,相对来说有点复杂.根据实践,我说一下我的理解,在故事板或xib中,ScrollView是根据其下面的一个View的大小来确定ContentSize的大小. 看一下效果 1. 创建一个项目,拖拽一个ScrollView到故事板中,如下图 2. 选中ScrollView,…
前言 ios设备的尺寸越来越多,针对一款app可能要适配到多种设备.多种尺寸.所以.我们期望我们的app可以autoLayout.本文主要介绍在Xcode中使用constraint.未来会不定期对此文进行更新. 约定 本文中view指代从Objuect Library中拖拽出来的各种view 基础 一个view在界面显示,至少有三种决定条件 一.自身大小:如width.height 二.相对于父容器的位置:如固定起始坐标位置或相对位置 三.相对于兄弟view的位置:如顶部对齐.左右距离.堆叠层次…
一.为什么要用UIScrollView? 移动设备的屏幕大小是极其有限的,因此直接展示在用户眼前的内容也相当有限当展示的内容较多,超出一个屏幕时,用户可通过滚动手势来查看屏幕以外的内容普通的UIView不具备滚动功能,不适合显示过多的内容. UIScrollView是一个能够滚动的视图控件,可以用来展示大量的内容,并且可以通过滚动查看所有的内容 系统设置就是一个ScrollView: 二.基本使用: 将需要展示的内容添加到UIScrollView中设置UIScrollView的contentSi…
XIB--AutoLayout添加约束 仿QQ登录界面: 说明:以下各图背景红色只是方便看清楚: 1.创建工程:创建xib文件 2.打开xib文件: (1).创建头像: 拖控件:uiimageview-->放到任意位置-->点击Align键,Pin键:如下图: 此时:就可以对控件任意约束了: 说明:由于时间原因,没介绍的以后慢慢自己琢磨: Align键:Horizontally: 垂直居中对齐: Vertically:水平居中对其: Pin键: Add New Constraints:表示这个…
简介 简化iOS应用使用纯代码机型自适应布局的工作,使用一种简洁高效的语法替代NSLayoutConstraints. 项目主页: Masonry 最新示例: 点击下载 项目简议: 如果再看到关于纯代码,xib或storyboard,使用哪种方式进行UI布局更合适的讨论,请推荐他们先试用下 Masonry. Masonry,像xib一样快速,同时拥有作为纯代码方式的灵活性 -- github关注度 7800 + 是有原因的! 快速入门 安装 使用 CocoaPods 安装 pod 'Masonr…
本代码主要实现在固定的位置滑动图片可以切换. 目录图如下: ViewController.h #import <UIKit/UIKit.h> // 通过宏定义定义宽和高 #define WIDTH self.view.frame.size.width #define HEIGHT self.view.frame.size.height @interface ViewController : UIViewController<UIScrollViewDelegate> @proper…
ScrollViewController.h #import <UIKit/UIKit.h> @interface ScrollViewController : UIViewController<UIScrollViewDelegate,UIPageViewControllerDelegate> { UIScrollView *_scrollView; UIPageControl*_pageControl; } @end ScrollViewController.m #import…
苹果官方文档里面提过,最好不要嵌套scrollView,特别提过UITableView和UIWebView,因为在滑动时,无法知道到底是希望superScrollView滑动还是subScrollView滑动,一旦出现这种情况,情况就出乎我们的意料. 但是有时候我们又需要嵌套,怎么做呢,就需要我们去决定,某个时候应该是那个scrollView可以拖动,那个不可以拖动,因为UIScrollView都会走同一个代理,我们就可以通过代理穿进去的参数去判断当前是那个scorllView,然后就可以控制它…
添加一个 Category  然后在使用到 UIScrollView 的文件里面 导入这个头文件 就可以 // //  UIScrollView+UITouch.m //  alarm // //  Created by zhuang chaoxiao on 15-6-16. //  Copyright (c) 2015年 zhuang chaoxiao. All rights reserved. // #import "UIScrollView+UITouch.h" @impleme…
要实现的效果 要求: storyboard上的准备工作 建好cell自定义AutoCell 类,关联好控件,事先准备好一些数据源 实现tableview的委托方法 核心部分,HeightForRow方法实现 具体的计算高度方法是现在自定义cell类中 几大需要注意的地方 在ios6.0上测试 要实现的效果 要求: 一般titleLabel 仅显示一行标题,高度为固定. imageview 大小也为固定. detailLabel 宽度固定,但高度根据文本动态调整. cell 底部拒imagevie…
本文代码下载 http://vdisk.weibo.com/s/BDn59yfnBVMAJ // // ViewController.m // ScrollView_T1119 // // Created by 杜 甲 on 13-4-8. // Copyright (c) 2013年 杜 甲. All rights reserved. // #import "ViewController.h" @interface ViewController () @end @implementa…
方法&&属性: // 监控目前滚动的位置(默认CGPointZero) CGPoint contentOffset; - (void)setContentOffset:(CGPoint)contentOffset animated:(BOOL)animated; // 滚动范围的大小(默认CGSizeZero) CGSize contentSize; // 视图在scrollView中的位置(UIEdgeInsetsZero) UIEdgeInsets contentInset; // 设…
本篇博客的内容也不算太复杂,算是AutoLayout的一些高级的用法.本篇博客我们主要通过一些示例来看一下AutoLayout中的Content Hugging Priority以及Content Compression Resistance Priority这两个优先级.下方我们先来简单的看一下这两个优先级的涵义: Content Hugging Priority:直译成中文就是"内容拥抱优先级",从字面意思上来看就是两个视图,谁的"内容拥抱优先级"高,谁就优先环…