UIViewController 的frame 无法修改

rollrock1987 2013-04-11 12:05:20
我想修改下 UIViewController 的view的frame,在viewDidLoad的时候修改了是对的

但是为什么在ddd函数里面打印出来的跟没修改之前是一样的呢?(没有其他任何代码)

- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.

CGRect frame = self.view.frame;

frame.size.height -= 100;
self.view.frame = frame;

NSLog(@"Rollrock-%f-%f",self.view.frame.origin.y,self.view.frame.size.height);

NSLog(@"Rollrock~%f-%f",self.view.bounds.origin.y,self.view.bounds.size.height);

UIButton * btn = [[UIButton alloc]initWithFrame:CGRectMake(0, 0, 100, 100)];
[btn addTarget:self action:@selector(ddd) forControlEvents:UIControlEventTouchDown];

[self.view addSubview:btn];


self.view.backgroundColor = [UIColor redColor];
}

-(void)ddd
{
NSLog(@"Rollrock-%f-%f",self.view.frame.origin.y,self.view.frame.size.height);

NSLog(@"Rollrock~%f-%f",self.view.bounds.origin.y,self.view.bounds.size.height);
}
...全文
381 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhouming0100 2014-04-20
  • 打赏
  • 举报
回复
viewDidLoad,函数,将整个view已经加载到内存中,你修改时无效的。
不担心 2013-04-12
  • 打赏
  • 举报
回复
都没看到你调用ddd方法
rollrock1987 2013-04-11
  • 打赏
  • 举报
回复
楼上的 跟我的 有什么不一样么?
Evan_Lei 2013-04-11
  • 打赏
  • 举报
回复
self.view.frame = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height - 100);
ESTabBarController 是一个高度自定义的 TabBarController 组件,继承自 UITabBarController,可轻松自定义 UI 样式,添加动画等。功能1、支持默认样式如果直接使用ESTabBarController进行初始化,你会得到与UITabBarController完全相同的仿系统样式UITabBarController样式:ESTabBarController仿系统样式:2、支持带有"More"的默认样式使用ESTabBarController进行初始化,若item大于最大显示数量则显示"More",样式与UITabBarController一致带有"More"的UITabBarController样式:带有"More"的ESTabBarController样式:3、支持UITabBarItem和ESTabBarItem混合可以任意设置tabbar的items,支持即包含UITabBarItem,同时也包含ESTabBarItemESTabBar和UITabBar混合样式:带有'More'的ESTabBar和UITabBar混合样式:4、支持UIKit属性支持UITabBarController、UITabBar和UITabBarItem的大部分api属性,使原有代码无需任何修改即可无缝迁移到ESTabBarController支持UITabBarController的selectedIndex属性的实现:5、支持与UINavigationController任意嵌套通常在使用UITabBarController过程中,会存在两种比较常见的层级处理方式:第一种:├── UITabBarController└──── UINavigationController└────── UIViewController└──────── SubviewControllers第二种:├── UINavigationController└──── UITabBarController└────── UIViewController└──────── SubviewControllers第一种情况在push子视图的时候需要设置 hidesBottomBarWhenPushed = true , 第二种则不需要在ESTabBarController中,通过添加Container视图到UITabBar的方式来兼容这两种层级处理方式。6、支持自定义使用ESTabBarController可以实现:自定义选中颜色和样式添加选中时的动画效果自定义Item的背景颜色添加高亮时的动画效果添加一些动画暗示用户点击等等...... 7、支持自定义按钮大小,支持自定义点击事件ESTabBarController支持自定义按钮的大小,你可以轻松定制不规则大小的tab按钮。当按钮frame大于TabBar时,通过HitTest方法使其超出TabBar区域点击仍然有效。 另外,ESTabBarController能够自定义点击事件,并通过一个block回调给上层处理。中间带有较大按钮样式:带有特殊提醒框样式:自定义按钮点击事件:8、支持默认通知样式如果直接使用ESTabBarController进行初始化,你会得到与UITabBarController完全相同的仿系统通知样式UITabBarController样式:ESTabBarController仿系统样式:9、支持自定义通知样式使用ESTabBarController可以实现:自定义提醒动画自定义提醒样式等等...... 10、支持Lottie通过自定义ContentView,能够添加Lottie的LAAnimationView到Item支持环境Xcode 8 or lateriOS 8.0 or laterARCSwift 3 or later
☆☆☆ “MJCSegmentInterface分段控制器” ☆☆☆ 一款简单的类似百思不得姐主页导航栏下方的那个分段界面的控件,类似王者荣耀助手的聊天模块的导航栏下方的分段界面控件等等,简单的说,这是一款分段界面选择器 ☆☆ 如何导入使用框架方法 ☆☆ 可以打开 https://github.com/MJCIOS/MJCSegmentInterface 将项目下载下来,将MJCSlideInterface文件夹放入自己的项目中 项目已支持pod导入,pod 'MJCSegmentInterface',如果没法导入,可以先[pod repo update]更新整个.cocoapods下的所有库... 有啥问题联系我QQ292251588,希望大神们和我多多交流,和大神们一起学习..... 技术交流群612845323,希望和大神们一起学习多多交流,互相学习些技术..... 希望大家多多支持,如果觉得好用,多多帮忙推荐,谢谢大家,谢谢大神,有啥问题,可以提给我... ☆☆ MJCSegmentInterface分段控制器创建(几行代码设置即可使用) ☆☆ NSArray *titlesArr = @[@"啦啦",@"么么",@"啪啪",@"啪啪",@"啪啪",@"啪啪",@"啪啪"]; MJCSegmentFaceControl *segmentsface = [[MJCSegmentFaceControl alloc]init]; segmentsface.frame = CGRectMake(0,64, MJCScreenWidth,MJCScreenHeight); [lala intoTitlesArray:titlesArr hostController:self]; [self.view addSubview:segmentsface]; MJCTestViewController *vc1 = [[MJCTestViewController alloc]init]; vc1.titlesCount = 1; MJCTestTableViewController *vc2 = [[MJCTestTableViewController alloc]init]; vc2.titlesCount = 2; MJCTestViewController1 *vc3 = [[MJCTestViewController1 alloc]init]; vc3.titlesCount = 3; MJCTestViewController *vc4 = [[MJCTestViewController alloc]init]; vc4.titlesCount = 4; MJCTestViewController *vc5 = [[MJCTestViewController alloc]init]; vc5.titlesCount = 5; NSArray *vcarrr = @[vc1,vc2,vc3,vc4,vc5]; [lala intoChildControllerArray:vcarrr]; 可自行修改各个属性,具体属性接口可进入项目查看.. /** 添加控制器的方法(添加控制器按照控制器添加的先后顺序与按钮对应的 */ -(void)intoChildControllerArray:(NSArray *)childControllerArray; /** 添加标题栏的方法 */ -(void)intoTitlesArray:(NSArray *)titlesArray hostController:(UIViewController *)hostController;
大神,大哥,帅哥,美女们,如果大家觉得好的,麻烦再github上面点个赞,谢谢大家,点赞的都是大好人啊 https://github.com/MJCIOS/MJCSegmentInterface github上面项目持续更新,有最新版本,新的功能,上面都会第一时间更新,麻烦大家进入github上面查看,谢谢...也谢谢审核官早点审核成功..也希望cocoachina增加一个编辑功能,这样我可以修改之前上传的代码了,要不然每次都要上传新的代码,,然后再删除以前的代码,实在是太麻烦了,谢谢... ☆☆☆ “MJCSegmentInterface分段控制器” ☆☆☆ 一款简单的类似百思不得姐主页导航栏下方的那个分段界面的控件,类似王者荣耀助手的聊天模块的导航栏下方的分段界面控件等等,简单的说,这是一款分段界面选择器 ☆☆ 如何导入使用框架方法 ☆☆ 可以打开 https://github.com/MJCIOS/MJCSegmentInterface 将项目下载下来,将MJCSlideInterface文件夹放入自己的项目中 项目已支持pod导入,pod 'MJCSegmentInterface',如果没法导入,可以先[pod repo update]更新整个.cocoapods下的所有库... 有啥问题联系我QQ292251588,希望大神们和我多多交流,和大神们一起学习..... 技术交流群612845323,希望和大神们一起学习多多交流,互相学习些技术..... 希望大家多多支持,如果觉得好用,多多帮忙推荐,谢谢大家,谢谢大神,有啥问题,可以提给我... ☆☆ MJCSegmentInterface分段控制器创建(几行代码设置即可使用) ☆☆ NSArray *titlesArr = @[@"荣耀",@"联盟",@"DNF",@"CF",@"飞车",@"炫舞",@"天涯明月刀"]; MJCSegmentFace *segmentsface = [[MJCSegmentFace alloc]init]; segmentsface.frame = CGRectMake(0,64, MJCScreenWidth,MJCScreenHeight); [lala intoTitlesArray:titlesArr hostController:self]; [self.view addSubview:segmentsface]; MJCTestViewController *vc1 = [[MJCTestViewController alloc]init]; MJCTestTableViewController *vc2 = [[MJCTestTableViewController alloc]init]; MJCTestViewController1 *vc3 = [[MJCTestViewController1 alloc]init]; MJCTestViewController *vc4 = [[MJCTestViewController alloc]init]; MJCTestViewController *vc5 = [[MJCTestViewController alloc]init]; NSArray *vcarrr = @[vc1,vc2,vc3,vc4,vc5]; [lala intoChildControllerArray:vcarrr]; 可自行修改各个属性,具体属性接口可进入项目查看.. /** 添加控制器的方法(添加控制器按照控制器添加的先后顺序与按钮对应的 */ -(void)intoChildControllerArray:(NSArray *)childControllerArray; /** 添加标题栏的方法 */ -(void)intoTitlesArray:(NSArray *)titlesArray hostController:(UIViewController *)hostController;
大神,大哥,帅哥,美女们,如果大家觉得好的,麻烦再github上面点个赞,谢谢大家,点赞的都是大好人啊 https://github.com/MJCIOS/MJCSegmentInterface github上面项目持续更新,有最新版本,新的功能,上面都会第一时间更新,麻烦大家进入github上面查看,谢谢...也谢谢审核官早点审核成功..也希望cocoachina增加一个编辑功能,这样我可以修改之前上传的代码了,要不然每次都要上传新的代码,,然后再删除以前的代码,实在是太麻烦了,谢谢... ☆☆☆ “MJCSegmentInterface分段控制器” ☆☆☆ 一款简单的类似百思不得姐主页导航栏下方的那个分段界面的控件,类似王者荣耀助手的聊天模块的导航栏下方的分段界面控件等等,简单的说,这是一款分段界面选择器 ☆☆ 如何导入使用框架方法 ☆☆ 可以打开 https://github.com/MJCIOS/MJCSegmentInterface 将项目下载下来,将MJCSlideInterface文件夹放入自己的项目中 项目已支持pod导入,pod 'MJCSegmentInterface',如果没法导入,可以先[pod repo update]更新整个.cocoapods下的所有库... 有啥问题联系我QQ292251588,希望大神们和我多多交流,和大神们一起学习..... 技术交流群612845323,希望和大神们一起学习多多交流,互相学习些技术..... 希望大家多多支持,如果觉得好用,多多帮忙推荐,谢谢大家,谢谢大神,有啥问题,可以提给我... ☆☆ MJCSegmentInterface分段控制器创建(几行代码设置即可使用) ☆☆ NSArray *titlesArr = @[@"荣耀",@"联盟",@"DNF",@"CF",@"飞车",@"炫舞",@"天涯明月刀"]; MJCSegmentFaceControl *segmentsface = [[MJCSegmentFaceControl alloc]init]; segmentsface.frame = CGRectMake(0,64, MJCScreenWidth,MJCScreenHeight); [lala intoTitlesArray:titlesArr hostController:self]; [self.view addSubview:segmentsface]; MJCTestViewController *vc1 = [[MJCTestViewController alloc]init]; MJCTestTableViewController *vc2 = [[MJCTestTableViewController alloc]init]; MJCTestViewController1 *vc3 = [[MJCTestViewController1 alloc]init]; MJCTestViewController *vc4 = [[MJCTestViewController alloc]init]; MJCTestViewController *vc5 = [[MJCTestViewController alloc]init]; NSArray *vcarrr = @[vc1,vc2,vc3,vc4,vc5]; [lala intoChildControllerArray:vcarrr]; 可自行修改各个属性,具体属性接口可进入项目查看.. /** 添加控制器的方法(添加控制器按照控制器添加的先后顺序与按钮对应的 */ -(void)intoChildControllerArray:(NSArray *)childControllerArray; /** 添加标题栏的方法 */ -(void)intoTitlesArray:(NSArray *)titlesArray hostController:(UIViewController *)hostController;

29,028

社区成员

发帖
与我相关
我的任务
社区描述
主要讨论与iOS相关的软件和技术
社区管理员
  • iOS
  • 大熊猫侯佩
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧