从零学IOS开发(一)

一,开发环境

​ IOS开发环境很简单,只需一台MAC和一个IDE(Xcode),Xcode是apple官方的开发环境,有了电脑和IDE后就不需要配置任何东西了。Mac挺费米的,不过好在Xcode是免费下载的。

二,新建项目

​ 新建项目时候需要选择app运行的平台,因为Xcode不仅可以开发IOS应用也能开发mac,watch,ipad等上的软件。
在这里插入图片描述
这里选择IOS中的app就行。
在这里插入图片描述
然后就是项目名称和使用的语言,apple的app可以使用objective-c和swift开发,但国内基本使用objective-c,所以这里也从objective-c开始学起。

三,项目文件结构

项目结构这里取决于使用的ios版本,创建成功后点击项目,打开的就是项目的配置,从中可以找到运行的ios版本,下图是ios14.5版本。
appdelegate:用来管理整个app的生命周期
scenedelegate:用来管理视图也就是界面的生命周期
viewcontroller:app的主要组件,app的功能逻辑代码主要写这里
其他的都是一些app的配置文件和图片等资源文件夹

如果是ios13之前的版本就不会有scenedelegate,因为ios13之前的视图生命周期和app生命周期都由appdelegate管理。
在这里插入图片描述

四,基本组件

  • UIWindow:进入scenedelegate.h可以看到一个这个对象,这是app最上层的视图组件
  • UIView: 最基本的视图类,app中所有看见的都是uiview,是可以嵌套的,源码中有这几个方法,可以给一个UIView添加子UIview
(void)addSubview:(UIView *)view;
(void)insertSubview:(UIView *)view belowSubview:(UIView *)siblingSubview;
(void)insertSubview:(UIView *)view aboveSubview:(UIView *)siblingSubview;
  • UIViewController:进入viewcontroller.h可以看到viewcontroller是继承了UIViewController,这是最常用的组件之一,是视图控制器,管理UIView的层级结构
  • UITabBarController: app底部的菜单栏就是这个实现的,其有两个属性,ViewController和TabBar
    在这里插入图片描述
  • UINavigationController:类似于UITabBarController,这是IOS软件经常看到的返回按钮,其也有两个属性ViewController和NavigationBar
    在这里插入图片描述
    在这里插入图片描述

五,APP基本雏形

首先看一个基本的app界面有哪些内容:

  1. 顶部的导航栏,有返回按钮,编辑按钮和中间的标题
  2. 中间主要内容展示区,显示一张图片和图片列表
  3. 底部的菜单栏,有三个按钮
    在这里插入图片描述

现在用前面介绍的组件来实现这些内容

SceneDelegate.m connectionOptions方法中

UITabBarController *tabbar = [[UITabBarController alloc]init];
    
    
    ViewController *myview = [[ViewController alloc]init];
    UINavigationController *nagavition = [[UINavigationController alloc]initWithRootViewController:myview];
    nagavition.tabBarItem.title = @"导航";

    
    UIViewController *view1 = [[UIViewController alloc]init];
    view1.view.backgroundColor = [UIColor redColor];
    view1.tabBarItem.title = @"文章";
       
    UIViewController *view2 = [[UIViewController alloc]init];
    view2.view.backgroundColor = [UIColor yellowColor];
    view2.tabBarItem.title = @"新闻";
       
    UIViewController *view3 = [[UIViewController alloc]init];
    view3.view.backgroundColor = [UIColor greenColor];
    view3.tabBarItem.title = @"视频";
       
    UIViewController *view4 = [[UIViewController alloc]init];
    view4.view.backgroundColor = [UIColor blueColor];
    view4.tabBarItem.title = @"我的";
       
    [tabbar setViewControllers:@[nagavition,view1,view2,view3,view4] ];
    self.window.rootViewController = tabbar;
ViewController.m 中

- (void)viewDidLoad {
    [super viewDidLoad];

    
    UIView *view2 = [[UIView alloc] init];
    view2.backgroundColor = [UIColor blueColor];
    view2.frame = CGRectMake(150, 150, 100, 100);
    [self.view addSubview:view2];
    
    UITapGestureRecognizer *gesture=[[UITapGestureRecognizer alloc] initWithTarget:self action: @selector(pushCtl)];
    [view2 addGestureRecognizer:gesture];
    
}

- (void)pushCtl{
    UIViewController *con = [[UIViewController alloc]init];
    con.view.backgroundColor = [UIColor whiteColor];
  
    
    con.navigationItem.title = @"图片展示";
    con.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc]initWithTitle:@"Edit" menu:nil];
    
    TestView *view = [[TestView alloc] init];
    view.backgroundColor = [UIColor redColor];
    view.frame = CGRectMake(100, 100, 100, 100);
    
    
    [con.view addSubview:view];
    
    [self.navigationController pushViewController:con animated:YES];
    
}

主界面:
在这里插入图片描述
点击蓝色方块后
在这里插入图片描述
点击底部文章按钮
在这里插入图片描述

到这里已经具备一个app的雏形了

  • 3
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不误正业的大卫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值