论UITableViewController被status bar覆盖的问题(IOS SDK 8.3)

高能物理相关软件 国内高能物理实验背景     研究物质最深层次结构及相互作用的前沿基础科学。 现代高能物理实验的要素    实例源 、 探测器、   电子学、  触发 DAQ、  原始数据、 刻度、重建 、物理分析、  成果  。 离线软件的地位和作用。    是硬件设备和物理学家的桥梁,是从数据到物理成果转化中的关键和重要的环节。 高能物理实验及其特点 独一无二性,实验规模越来越大,努力省钱(使用 阅读详情

通常我们做一个UITableViewController(以下简称tvc)直接打开,在没有NavigationController的时候都会是这样
覆盖了状态栏的tvc

问题是,你要加一个UINavigationController吗?

还是像别人一样不用UITableViewControler而是在main storyboard 里面造一个UIViewController + UITableView 下移20px?

告诉你我最近实现的一个方法:

#define BARITEMHEIGHT 64
- (void)viewDidLoad {
    [super viewDidLoad];
    CGRect frame = self.view.frame;
    frame.size.height = BARITEMHEIGHT;

    UINavigationBar *navigationBar = [[UINavigationBar alloc] initWithFrame:frame];

    UINavigationItem *navigationItem = [[UINavigationItem alloc] initWithTitle:@"Active group"];
    UIBarButtonItem *leftbutton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(actionDown)];
    UIBarButtonItem *rightbutton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCancel target:self action:@selector(actionCancel)];
    [navigationBar pushNavigationItem:navigationItem animated:YES];
    [navigationItem setLeftBarButtonItem:leftbutton];
    [navigationItem setRightBarButtonItem:rightbutton];
    self.tableView.tableHeaderView = navigationBar;

}


-(void) actionDown
{
    [self dismissViewControllerAnimated:YES completion:^{
        // balabalabala...
    }];
}

-(void) actionCancel
{
    [self dismissViewControllerAnimated:YES completion:nil];
}

省事罗!
完成加入navigatebar

  1. 由于加入的navigatebar是tableView的一部分,在手指滑动的时候这个navigatebar是会随着移动的,如果希望navigatebar不动,那么,就要把
- (void)viewDidLoad
{
...
}

里面的内容去掉
然后,在

-(void)viewDidAppear:(BOOL)animated
{
}

加上类似的内容,致于为什么加这里,可能是因为viewDidLoad的时候某些内部的控件还没有准备好吧

-(void)viewDidAppear:(BOOL)animated
{
    CGRect frame = self.view.frame;
    frame.origin.y += BARITEMHEIGHT;
    frame.size.height  -= BARITEMHEIGHT;
    self.view.frame = frame;

    frame.origin.y = 0;
    frame.size.height = BARITEMHEIGHT;

    UINavigationBar *navigationBar = [[UINavigationBar alloc] initWithFrame:frame];

    UINavigationItem *navigationItem = [[UINavigationItem alloc] initWithTitle:@"Active appointment"];
    UIBarButtonItem *leftbutton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(actionDown)];
    UIBarButtonItem *rightbutton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCancel target:self action:@selector(actionCancel)];
    [navigationBar pushNavigationItem:navigationItem animated:YES];
    [navigationItem setLeftBarButtonItem:leftbutton];
    [navigationItem setRightBarButtonItem:rightbutton];

    [self.view.superview addSubview:navigationBar];
}

感谢一下我吧!
转载不要忘了发我的链接

半导体行业周期分析:库存、需求与复苏路径深度解读 半导体行业作为现代科技产业的基石,其周期性波动受供需关系、库存水平和宏观经济等多重因素影响。从技术原理上看,行业景气度通常通过库存周转天数、晶圆厂产能利用率等核心指标进行监测,这些指标反映了产业链各环节的健康状况。在工程实践中,理解这些指标有助于企业进行库存管理和产能规划,从而提升运营效率。当前,半导体市场正经历结构性分化,其中**库存周转天数**和**晶圆厂产能利用率**成为判断市场拐点的关键。在应用场景上,汽车电子、人工智能等领域需求相对稳健,而消费电子则面临较大压力。本文聚焦于半导体行业的周期特征,探 阅读详情

相关推荐

单相全桥逆变三种SPWM调制方式(单极/双极/倍频)到底怎么选?一篇讲透优缺点与选型

本文深入解析单相全桥逆变器中单极性、双极性和单极性倍频三种SPWM调制方式的原理与工程选型策略。通过对比开关损耗、谐波特性和驱动复杂度等关键指标,提供基于STM32的实战方案和选型框架,帮助工程师在新能源发电、电机驱动等应用中做出最优决策。

weixin_34046298的博客 803

iOS 关于UIView覆盖StatusBar的小知识点

项目中有关于浏览图片的需求, 自己写了一套, 但是一直有个关于StatusBar的问题: 因为在查看图片时隐藏掉了StatusBar, 当结束查看后再显示sta会发现整个界面下滑了20px, 在IM聊天界面这个滑动效果很不友好 最近在优化这一块东西时又想到了这个问题, 现在得到了比较好的解决方法, 在此记录一下: 需要让StatusBar消失时: 需要让StatusBar显示时: ...

silence_0313的博客 1932

【74HC595芯片】核心驱动代码

74HC595是一个8位串行输入、并行输出的位移缓存器:并行输出为三态输出。在SCK 的上升沿,串行数据由SDL输入到内部的8位位移缓存器,并由Q7’输出,而并行输出则是在LCK的上升沿将在8位位移缓存器的数据存入到8位并行输出缓存器。当串行数据输入端OE的控制信号为低使能时,并行输出端的输出值等于并行输出缓存器所存储的值。

weixin_67147824的博客 1847

隐藏状态栏后tableview自动滚动的问题

最近在开发过程中碰到一个很奇怪的问题,在将状态栏隐藏掉之后,页面上的tableView会自动向上滚20个像素。    状态如下:      这是因为在iOS7.0之后,系统会自动调整scrollView的layout 和 contentInsets 。从而使其自动地适应iOS7之后那种整个屏幕都可以放入自定义控件的方法。而我们大多数在开发过程中并不希望收到系统自动的影响而是完全

小工匠的专栏 2707

C# 进阶:打造WinForms中的动态交互式UserControl

本文深入探讨了如何在C# WinForms中创建动态交互式UserControl,以提升桌面应用的用户体验和代码复用性。通过剖析UserControl生命周期、事件体系,并结合一个可拖拽缩放的分割面板实战案例,详细讲解了鼠标键盘事件处理、自定义绘制、状态管理以及性能优化等核心技巧,帮助开发者封装复杂交互逻辑,打造专业级自定义控件。

weixin_29279153的博客 461

ICESat-2数据下载及处理分析随笔

ICESat-2全称是Ice,Cloud and land Elevation Satellite -2。看名字我们能知道它的任务是测ice,cloud和land elevation,而且这是一个Satellite,是一颗卫星。那么这里我们就要分清ICESat-2和ATLAS的关系,ICESat-2是星载平台,是一个space observatory,ATLAS是这个星载平台上搭载的单光子激光雷达系统。

u011322358的博客 1万+

解决在iphone(ios7)中状态栏(Status bar)会覆盖(overlap)在软件(view)上的问题

做了个软件,在android下显示正常,在iphone中最顶部的statusbar为何会覆盖在软件上方?如图: 解决办法: 第一种: 如果允许,隐藏状态栏。 在xcode中找到Resources/xxx-Info.plist文件, 添加2个属性: UIStatusBarHidden UIViewControllerBasedStatusBarAppearance 第二种:

gundumw100的专栏 1213

Flink SQL数据血缘实战:如何用Calcite追踪字段级数据流向(附源码示例)

本文深入探讨了如何利用Apache Calcite解析Flink SQL执行计划,实现字段级数据血缘的追踪。通过扩展Calcite的元数据处理器,特别是针对Flink特有的Snapshot等节点,文章提供了从获取优化后的逻辑计划到提取并可视化血缘关系的完整实战方案,并附有核心源码示例,帮助开发者构建实时数仓的数据治理能力。

weixin_29032337的博客 142

iOS让视图View覆盖状态栏statusBar(即View显示在statusBar的前面),不是隐藏statusBar

转自我的简书:https://www.jianshu.com/p/7e39a06b2d00项目需求,需要新建一个View,半透明的覆盖整个屏幕,包括statusBar。如果直接在keyWindow上面addSubView,是不行的,statusBar仍然显示在最前面。这里需要新建一个UIWindow,并且要设置windowLevel > UIWindowLevelStatusBar,这样才能...

芋头CF的专栏 5298

uniapp [安卓苹果App端] - 详细实现PDF预览功能在线预览PDF文档,Uniapp App端实现pdf文件预览在线预览pdf二进制文件流、本地pdf文档、PDF文件地址url路径(解决白屏

uni-app,安卓Android,苹果ios,安卓app端,苹果App端,uniapp苹果安卓app,uniapp在线预览pdf功能,在安卓苹果app平台实现PDF的预览查看,uniappApp端实现pdf文件预览,UNIAPP在线预览PDF文档,Uniappapp在线预览pdf文件流,从后端接口里获取pdf文件如何转成链接预览,预览pdf的插件,uni-app的pdf预览功能,uniapp使用pdf.js插件预览pdf文件,预览pdf白屏没有报错,打开后没反应,打开是空白,加载PDF时发生错误,如

🏆 前端领域优质创作者 1万+

3、图像中文字信息提取技术全解析

本文全面解析了图像中文字信息提取(Text Information Extraction,TIE)的技术原理、挑战及应用领域。详细介绍了图像中三种主要文字形式:场景文字、字幕文字和文档文字的特点及提取难点。系统阐述了TIE技术的主要流程步骤,包括文字检测、定位、提取与增强、识别等关键阶段,并对主流技术方法进行了分类比较,包括基于连通组件、边缘、纹理等方法的优缺点分析。文章还介绍了多种其他提取技术,如二值化方法、混合方法、基于梯度的方法等,并提出了一种基于立体帧的新型场景文字提取方法,通过实验验证了该方法在召

ll5678的博客 119

UITableView section header 不固定

iOS系统自带的UITableView,当数据分为多个section的时候,在UITableView滑动的过程中,默认section header是固定在顶部的,滑动到下一个section的时候,下一个section header把上一个section header顶出屏幕外。典型的应用就是通讯录。 默认情况下,UITableView的section header是固定的,如何让section ...

weixin_30376509的博客 558

【学习系列】SAP RAP 8:行为定义-Authorization Control

本文介绍了SAP RAP中的授权控制实现方法,主要分为读取操作和修改操作两种场景。读取操作通过ABAP CDS的数据控制语言(DCL)实现,使用访问控制对象限制数据可见范围;修改操作则通过行为定义中的权限检查,包括全局授权、实例授权和预检查三种方式。文章详细说明了如何使用DCL创建访问控制规则,并通过实例演示了全局授权和实例授权的代码实现方法,以及预检查功能在数据更新前的权限验证。这些授权控制机制共同确保用户只能访问和操作其权限范围内的数据,有效保障系统安全性。

DeveloperMrMeng的博客 434

iOS中点击顶部statusBar让tableView回到第一行

在iOS开发中 ,有一个非常基础的功能就是用户点击屏幕顶部状态栏的时候, tableView会自动会滚刀第一行. 其实这个很简单 , 就是系统对的一个属性scrollToTop .系统默认的这个属性的值是YES. // When the user taps the status bar, the scroll view beneath the touch which is closest

bboyzhigang的博客 2762

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

iOS 状态栏留白问题(UITableView 导致)

页面中如果用到UITableView,基本上会遇到导航栏或者状态栏的留白问题 1.业务需求:隐藏导航栏,让tableView从(0,0)位置出现 2.问题:隐藏导航栏后,UITableView 的 frame 设置成(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT) ,但是状态栏会有一段白色留白,Push到下个页面,再pop 回来 ,留白又消失了 (如下图) 3.解决...

wyz670083956的博客 2909

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

iOS pushViewController 和 presentViewController的区别 详解

pushViewController 导航控制器入栈的方式切换页面 presentViewController 模态切换的方式切换页面 1> 用 UINavigationController 的时候用 pushViewController:animated      返回之前的视图 [[self navigationController] popViewControllerA

chenshun123的博客 1万+

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

iOS Status Bar 的隐藏

转载http://jumpingfrog0.github.io/2016/2016-03-26-status-bar-hidden/ Status Bar 的正常隐藏 view-controllers 控制 status bar 的隐藏 在iOS 9中,status bar的隐藏默认是通过view-controlls控制的,即每个控制器决定是否隐藏status bar。 只需在...

weixin_30500663的博客 353

IOS-44-解决用模态方式presentViewController推出页面时导航栏消失问题

1.首先要明确一点:要想让被推出来的视图有导航栏,那被推出来的视图肯定是被添加到Navigation导航视图的 2.所以代码步骤是这样的(在这里,TLDNavigationController是我自定义的一个导航控制器,你可以直接使用NavigationController)://未登录,跳转到登录页面 TLDLoginViewController *loginVC = [[TLDLogi

IOT_LI的专栏 1万+

IOS上 关于状态栏的相关设置(UIStatusBar)

IOS上 关于状态栏的相关设置(UIStatusBar) ios上状态栏 就是指的最上面的20像素高的部分  状态栏分前后两部分,要分清这两个概念,后面会用到: 前景部分:就是指的显示电池、时间等部分; 背景部分:就是显示黑色或者图片的背景部分; 如下图:前景部分为白色,背景部分为黑色  注意:这里只涉及到ios7以及更高

happyrabbit456的专栏 1490

iOS开发 - UITableView的tableHeaderView注意事项(遮挡cell,内容重复等等)

今天我们要来说的知识点是UITableView的tableHeaderView,小伙伴要区分清楚,不是协议里的header,而是总的header,需要用tableView.tableHeaderView来设置。 使用tableView.tableHeaderView时,如果使用不当,会造成header覆盖cell,cell内容出现在header上或者header和cell中间莫名多了系统head...

CodingFire的博客 8460

Tableview偏移的误差,偏移20,偏移64

在使用Tableview时有时候会产生各种各样的小问题,下面说下Tableview偏移问题的产生和解决方法 原因:1滚动视图不能作为父视图的第一子视图。         2scrollView的自动布局问题。 这是因为在iOS7.0之后,系统会自动调整scrollView的layout 和 contentInsets 。从而使其自动地适应iOS7之后那种整

YCM1101743158的博客 6284

iOS7 tabbar遮盖tableview的cell解决方法

ios7中tabbar为半透明。为tableview动态添加N个cell后,最下面的cell会被tabor半遮,需要给 UITableViewController添加属性 : //tableview不被tabbar遮盖 childVc.edgesForExtendedLayout = UIRectEdgeNone;

zhongyuan_1990的专栏 4510

UITableView 显示在statusbar 下面

IOS 6 升到 IOS7 之后出现的状况 新建一个工程,删除默认的ViewController,拖拽一个TableViewController到storyboard。 即使没有勾选 "Extend Edges Under {Top, Bottom, Opaque} Bars" 或者 self.edgesForExtendedLayout=UIRectEdgeNone; self.e...

weixin_33724570的博客 312

View覆盖status bar

原来想的是把statusbar隐藏了,但是如果隐藏了,界面会上移20像素,所以不可行。 解决办法是:      self.windowLevel=UIWindowLevelAlert;//优先级高

gaoyuqiang30的博客 505

[UITableview问题]使用UITableBarController加UITableView时,底部被遮挡

使用UITableBarController加UITableView时,底部被遮挡一般通过继承UITableViewController,是不会发生底部被遮挡的问题,主要是因为UITableView的Frame系统自动设置。在UINavigationController加UITableBarController的结构时,会发生底部被遮挡问题。

wangqi509的专栏 3469
上一篇: [转载自网络http://www.qnwz.net/zawen/40804.html]来生想做哪国人?
下一篇: 在Swift中的ASCII到字符转换的问题
魔芋
博客等级 码龄26年 37粉丝 71原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值