UIScrollView加入控件,控件距离顶部始终有间距的问题

今天。特别郁闷。自己定义了一个UIScrollView,然后在它里面加入控件,如UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(0,0,100,100)];

按理来说,这个button应该在scrollView的顶部。可是却不是,他与顶部相距一个statusbar+navagation高度,搞了半天也没发现这一点。。。。

我一直以为是自己的contentsize设置的问题,所以一直环绕这个来想解决方式。浪费了较多时间。。

现总结例如以下:

假设在UINavigationController内设置一个UIViewControlller,而UIViewController的第一个子视图是UIScrollView的话。UIScrollview里面全部的subView都会发生下移。在navigationBar,以及statusBar都显示的情况下,Navigation的当前VC,他的VC的view的子视图树的根部的第一个子视图,假设是Scrollview的话,这个scrollview的全部子视图都会被下移64个像素。

解决方式

1、把scrollview的全部子视图上移64个像素。

2、把scrollView更改地位。是它不是子视图树的根部第一个子视图。即在加入scrollview到父视图之前。先加入其它控件

时间: 2025-01-04 05:47:01

UIScrollView加入控件,控件距离顶部始终有间距的问题的相关文章

iOS开发——实战技术OC篇&点击状态栏ScrollView(包括子控件)自动滚到顶部

点击状态栏ScrollView(包括子控件)自动滚到顶部 其实这种方式我们平时见的还是比较多的,而且适合用户的需求,所以就搬来琢磨了一下,感觉效果还不错 这里就直接将解决思路一一写出来不将代码分段展示了,在代码中我加了详细的注释objective-c的套路和swift基本一样,在最后会将Swift和objective-c的代码一起放上,如果需要直接解决问题的童鞋可以直接将代码拷贝到工程里即可 首先创建一个topWindow继承至NSObject,这里我们考虑将这个功能完全封装起来,所以所有的方法

线程间操作无效: 从不是创建控件“控件id”的线程访问它。(.net跨线程执行方法)

找了好久资料,终于解决了,特此记录下来. 1 delegate void DelListHandler(string number); /// <summary> /// 按标识删除listview内容 /// </summary> /// <param name="number">标识</param> private void DelListViewLog(string number) { for (int i = 0; i <

测试scrollTop--随滚动条距离顶部的高度body显示不同的颜色

<!doctype html> <html> <head>     <title>测试scrollTop--随滚动条距离顶部的高度body显示不同的颜色</title>     <meta name="author" content="阿耀王子"> </head> <body> <p>测试scrollTop--随滚动条距离顶部的高度body显示不同的颜色<

距离顶部估计像素,显示div!

<html> <head> <title>slide</title> <style type="text/css"> #example1 {width:690px;height:3000px;margin:0 auto;background:#ccc;margin-top:200px;} #example2 {width:690px;height:2000px;margin:0 auto;background:#eee;} #

1016-06-首页20-封装工具条-有控件在viewDidLoad的时候距离顶部是0--到了viewWillAppear或viewDidAppear系统就加了64

} ———————————————————————————————————————————— 为什么要在调用父类setFrame之前改那个y值呢? ———————————————————————————————————————————— 最好在layoutSubViews里面设置子控件的frame,在initWithFrame里面传进来的frame默认拿到是0的:因为在调用init的时候调用initWithFrame,穿进去的frame是0: layoutSubViews 才能完整拿到那个控件的

UIScrollView上面添加的控件越界

iOS7以上,在UINavigationBar下面添加可以滑动的控件时,我一般会使用UIScrollView或UICollectionView.但是这些都会遇到同一个问题,它们上面的控件会出现越界的情况(控件出现在可视范围之外),经研究,发现是导航栏影响,以下是解决方法: 1. 在viewWillAppear中设置,UIScrollView或UICollectionView的原点为(0,64) self.navigationController.navigationBar.translucent

解决UIScrollView中添加子控件出现“UIScrollView Scrollable Content Size Ambiguity”的办法

来自StackOverflow的帖子,原文见这里. So I just sorted out in this way: Add in the UIScrollView a UIView (we can call that contentView); In this contentView, set top, bottom, left and right margins to 0 (of course from the scrollView which is the superView); Set

C#控件控件前缀命名规范

标准控件 1  btn Button 2  chk CheckBox 3  ckl CheckedListBox 4  cmb ComboBox 5  dtp DateTimePicker 6  lbl Label 7  llb LinkLabel 8  lst ListBox 9  lvw ListView 10  mtx MaskedTextBox 11  cdr MonthCalendar 12  icn NotifyIcon 13  nud NumeircUpDown 14  pic P

jquery获取div距离顶部的距离

获取元素到页面顶部距离的语句为: 1.jquery写法:$(“#divID”).offset().top //推荐 $("#vertical").position().top 2.js写法: document.getElementById("divID").offsetTop //推荐