当前位置: 首页 > news >正文

ios创建控制器的3种方法实现页面跳转

ios遵守mvc设计模式,下面介绍创建控制器viewcontroller的几种方法,来实现页面的跳转

1.纯代码创建

//
//  AppDelegate.m
//  study2024
//
//  Created by zhifei  zhu on 2024/8/7.
//#import "AppDelegate.h"
#import "MyViewController.h"
@interface AppDelegate ()@end@implementation AppDelegate- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {// Override point for customization after application launch.//使用自定义viewcontroller,先删除main.storyboard和viewcontroller//1.创建窗口并指定大小self.window=[[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds];//2.创建控制器MyViewController *myViewController=[[MyViewController alloc]init];myViewController.view.backgroundColor=[UIColor greenColor];//3.设置为窗口的根控制器self.window.rootViewController=myViewController;//4.将窗口作为应用程序的主窗口[self.window makeKeyWindow];return YES;
}#pragma mark - UISceneSession lifecycle- (UISceneConfiguration *)application:(UIApplication *)application configurationForConnectingSceneSession:(UISceneSession *)connectingSceneSession options:(UISceneConnectionOptions *)options {// Called when a new scene session is being created.// Use this method to select a configuration to create the new scene with.return [[UISceneConfiguration alloc] initWithName:@"Default Configuration" sessionRole:connectingSceneSession.role];
}- (void)application:(UIApplication *)application didDiscardSceneSessions:(NSSet<UISceneSession *> *)sceneSessions {// Called when the user discards a scene session.// If any sessions were discarded while the application was not running, this will be called shortly after application:didFinishLaunchingWithOptions.// Use this method to release any resources that were specific to the discarded scenes, as they will not return.
}@end

2. 通过storyboard创建控制器

1)、Is initial view controller打上勾

   //通过storyboard创建控制器

    UIStoryboard *uiStoryboard=[UIStoryboard storyboardWithName:@"MyStoryboard" bundle:nil];

    //storyboard只有一个viewcontroller的情况

//    MyViewController *myVc=[uiStoryboard instantiateInitialViewController];

    

    //storyboard有多个viewcontroller的情况,需要使用storyboard id属性

    MyCatViewController *myVc=[uiStoryboard instantiateViewControllerWithIdentifier:@"MyStoryboard1"];

     

    

    [self.view.window setRootViewController:myVc];

2.3、通过xib创建控制器

 //创建控制器的时候同时创建xib页面

    PhotoViewController * myVc = [[PhotoViewController alloc]init];

    [self.view.window setRootViewController:myVc];

相关文章:

ios创建控制器的3种方法实现页面跳转

ios遵守mvc设计模式&#xff0c;下面介绍创建控制器viewcontroller的几种方法&#xff0c;来实现页面的跳转 1.纯代码创建 // // AppDelegate.m // study2024 // // Created by zhifei zhu on 2024/8/7. //#import "AppDelegate.h" #import "MyViewContro…...

Android逆向题解-boomshakalaka-3-难度5

这个app 是一个cocos游戏&#xff0c;没有用脚本实现&#xff0c;纯c实现。 题目描述:play the game, get the highest score 题目要求是玩游戏得到最高分就可以得到flag&#xff0c;是写到配置文件的&#xff0c;初始flag值看着是base编码的。 核心代码在so里面的ControlLay…...

Linux(Ubuntu 22.04)系统中固定串口

Linux&#xff08;Ubuntu 22.04&#xff09;系统中固定串口 文章目录 前言正文查看linux串口信息修改udev固化串口校验是否修改完成 注意 前言 在Linux系统中固定串口&#xff08;通常指的是串行通信接口&#xff0c;如/dev/ttyS0或/dev/ttyUSB0&#xff09;的原因有几个方面&…...

LeetCode - 209 - 长度最小的子数组

力扣209题 题目描述&#xff1a;长度最小的子数组 给定一个含有 n 个正整数的数组和一个正整数 target 。 找出该数组中满足其总和大于等于 target 的长度最小的 子数组 [numsl, numsl1, ..., numsr-1, numsr] &#xff0c;并返回其长度**。**如果不存在符合条件的子数组&…...

探索空间计算与VR中的手势跟踪新纪元:XHand框架详解

在虚拟现实(VR)和扩展现实(XR)技术日新月异的今天,手势跟踪作为实现沉浸式体验的关键技术之一,正逐步从概念走向成熟。今天,我们将深入探索一个创新的框架——XHand,它以其卓越的性能和先进的技术亮点,为空间计算与VR领域的手势跟踪带来了全新的解决方案。 XHand框架…...

leetcode + 项目复习

上午 Leetcode算法 参考文章——代码随想录 1. KMP 概念 主要应用 字符串匹配 主要思想 根据之前匹配的信息&#xff0c;当发现字符串不匹配时&#xff0c;避免从头开始匹配。 什么是前缀表&#xff08;next数组、prefix&#xff09; 是用来回退的&#xff0c;当文本串和…...

树莓派4/5:设置apt、pip、conda首选清华镜像源

一、教程简介 在中国大陆地区&#xff0c;使用清华镜像源可以显著缩短资源下载时间。 本教程介绍如何将清华镜像源设置为树莓派的apt、pip、conda下载的首选项&#xff08;默认项&#xff09;。其中&#xff0c;apt和pip为树莓派系统自带&#xff0c;conda则需要安装miniforg…...

NoSQL 之Redis集群模式

目录 案例概述 redis工作模式 主从模式 哨兵模式 redis cluster模式 Redis集群介绍 Redis集群的优势 Redis集群的实现方法 Redis-Cluster数据分片 Redis-Cluster的主从复制模型 Redis集群部署 案例部署 安装redis 检查redis的状态 修改配置文件 重启启动redis服…...

oracle rac

1、app连接oracle rac集群 连接到 Oracle RAC&#xff08;Real Application Clusters&#xff09;的多种配置方式 1. 使用 JDBC 连接字符串&#xff1a; 使用 JDBC 连接字符串是连接 Oracle RAC 的常见方式。连接字符串的格式如下&#xff1a; jdbc:oracle:thin:(DESCRIPTION…...

计算机毕业设计Python深度学习房价预测 房价可视化 链家爬虫 房源爬虫 房源可视化 卷积神经网络 大数据毕业设计 机器学习 人工智能 AI

Python深度学习房价预测系统开题报告 一、研究背景与意义 随着城市化进程的加速和房地产市场的不断发展&#xff0c;房价成为影响人们生活质量的重要因素之一。准确预测房价不仅有助于政府制定科学的房地产政策&#xff0c;还能为开发商提供市场参考&#xff0c;同时帮助购房…...

【Linux】学习Linux,需要借助具象化的思维

指令与图形化界面 导读一、命令行与图形化界面二、命令行与图形化界面的发展历程1.2.1 打字机的起源1.2.2 肖尔斯和格利登型打字机1.2.3 鼠标的发明1.2.4 图形化界面&#xff08;GUI&#xff09;的发展 三、命令行与图形化之间的联系3.1 图形化界面的人机交互3.2 命令行界面的人…...

R语言贝叶斯方法在生态环境领域技术教程

原文链接&#xff1a;R语言贝叶斯方法在生态环境领域技术教程https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247612056&idx5&snb170122cf5052cc7cb2d858606b9f158&chksmfa82777fcdf5fe69eec092410530e2900c98bcbb84e3d33c823705c948b4db96545bf282747a…...

mojo实现高阶函数(algorithm)

functional 实现高阶函数。 您可以从 algorithm 包导入这些 API。例如: from algorithm import map别名: ​Static1DTileUnitFunc = fn[Int](Int, /) capturing -> None: Signature of a 1d tiled function that performs some work with a static tile size and an off…...

先进制造aps专题二十四 云平台排产aps的方案设计

云平台排产aps的方案设计 针对对象是有排产需求无需定制的中小型工厂企业 一 网站功能&#xff08;b/s架构&#xff09; 1 前端界面 客户登录 排产项目管理 基础数据&#xff08;产品资料&#xff0c;产品工艺&#xff0c;工作日历&#xff0c;生产资源&#xff0c;工艺能力…...

JavaScript 逆向技巧总结

本节属于知识总结&#xff0c;只是对思路的梳理&#xff0c;不对具体内容进行展开 JS 逆向可以分为三大部分&#xff1a; 寻找入口&#xff0c; 调试分析&#xff0c; 模拟执行 寻找入口&#xff1a; 这是非常关键的一步&#xff0c;逆向在大部分情况下就是找一些加密参数到底…...

linux反向代理原理:帮助用户更好地优化网络架构

Linux反向代理原理详解 反向代理是一种在网络架构中常用的技术&#xff0c;尤其在Linux环境下被广泛应用。它可以帮助实现负载均衡、安全防护和请求缓存等功能。本文将深入探讨Linux反向代理的原理、工作机制以及其应用场景。 1. 什么是反向代理 反向代理是指代理服务器接收客…...

开源DevOps工具链管理:DevStream

DevStream&#xff1a;简化DevOps&#xff0c;加速创新- 精选真开源&#xff0c;释放新价值。 概览 DevStream&#xff0c;一个开源的DevOps工具链管理器&#xff08;DTM&#xff09;&#xff0c;由merico-dev团队精心打造&#xff0c;现已加入CNCF大家庭&#xff0c;并在devs…...

图数据库框架及其支持的开发语言和应用场景

图数据库框架及其支持的开发语言和应用场景 1. Neo4j 类型:原生图数据库特点:最流行的图数据库之一,使用Cypher查询语言,支持ACID事务,具有丰富的图算法库。支持的开发语言:Java, Python, JavaScript, Go, .NET, Ruby, PHP等。驱动和库:Neo4j Java Driver, Py2neo (Pyt…...

【Linux 18】核心转储

文章目录 &#x1f308; 一、什么是核心转储&#x1f308; 二、如何启动核心转储&#x1f308; 三、为什么有核心转储 &#x1f308; 一、什么是核心转储 核心转储 (Core Dump)&#xff1a;当一个进程异常终止时&#xff0c;会在触发进程崩溃的目录下生成一个以进程 pid 命名的…...

远程传输文件至服务器—spc 传输

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、SPC是什么&#xff1f;二、使用步骤1.进入 windows 客户端需要传输文件的目录。2.在该目录的路径栏输入 cmd&#xff0c;回车打开终端。3.确定服务器端 IP …...

AI翻唱不求人:RVC语音变声器快速入门与实战体验

AI翻唱不求人&#xff1a;RVC语音变声器快速入门与实战体验 1. RVC语音变声器简介 RVC&#xff08;Retrieval-based Voice Conversion&#xff09;是一款基于检索的语音转换工具&#xff0c;它能够将普通人的声音转换为特定角色的声音&#xff0c;实现AI翻唱和语音变声效果。…...

避坑指南:Pixhawk飞控在F450上校准调试时,90%新手会遇到的5个问题及解决办法

Pixhawk飞控F450装机避坑手册&#xff1a;从校准异常到模式切换的实战解决方案 第一次组装F450机架搭配Pixhawk飞控的体验&#xff0c;就像在玩一场没有存档功能的硬核游戏——每个环节都可能突然跳出"Game Over"提示。上周帮朋友调试一台总在罗盘校准阶段卡死的无人…...

Jupyter Notebook机器学习避坑指南:为什么你的泰坦尼克号预测模型准确率虚高?

Jupyter Notebook机器学习避坑指南&#xff1a;为什么你的泰坦尼克号预测模型准确率虚高&#xff1f; 在数据科学竞赛和实际业务场景中&#xff0c;泰坦尼克号数据集堪称机器学习界的"Hello World"。但正是这个看似简单的数据集&#xff0c;却暗藏诸多陷阱。许多学习…...

ModelScope API 新手必看:从申请Key到调用Qwen3-32B模型的完整流程

ModelScope API 新手必看&#xff1a;从申请Key到调用Qwen3-32B模型的完整流程 第一次接触ModelScope API时&#xff0c;我花了整整两天时间才搞明白整个流程。不是文档不够详细&#xff0c;而是实际操作中总会遇到各种意想不到的小问题。本文将带你避开这些坑&#xff0c;从零…...

PHP如何优化冗余代码

在编程中&#xff0c;代码的冗余是一个常见的问题&#xff0c;不仅增加了代码的复杂性&#xff0c;还降低了可读性和可维护性。对于PHP这样的语言来说&#xff0c;减少代码冗余同样重要&#xff0c;尤其是当项目规模变得越来越大时。本文将探讨如何有效地减少PHP代码的冗余&…...

Supabase注册与新增用户全解析:5个关键区别及适用场景指南

Supabase用户管理系统设计指南&#xff1a;注册与手动创建的5大核心差异 在构建现代SaaS平台时&#xff0c;用户管理系统往往是整个架构的基石。Supabase作为开源的Firebase替代方案&#xff0c;提供了完整的认证和用户管理解决方案。但很多开发者在使用过程中&#xff0c;常常…...

LoRaWAN Arduino库:Grove Wio E5轻量级接入方案

1. 项目概述LoRaWAN-Seeed-Grove-Wio-E5 是一个面向嵌入式开发者的轻量级 Arduino 库&#xff0c;专为 Grove Wio E5 LoRa-E5 模块设计。该模块基于 Semtech SX1276 射频芯片&#xff0c;集成 ARM Cortex-M0 内核&#xff08;nRF52832&#xff09;&#xff0c;出厂预烧录 AT 固…...

【人工智能】CCF-A/B/C类期刊最新解析:影响因子、分区与投稿指南

1. CCF期刊分类体系解析 第一次接触CCF期刊目录时&#xff0c;我也被A/B/C的分类搞得一头雾水。简单来说&#xff0c;中国计算机学会&#xff08;CCF&#xff09;将计算机领域的国际学术期刊分为A、B、C三个等级&#xff0c;其中A类代表该领域的顶级期刊&#xff0c;相当于学术…...

西门子三菱 PLC 编程教程合集|零基础到进阶学习资料整理

在工业自动化领域&#xff0c;PLC 编程是核心技能之一&#xff0c;想要系统掌握西门子、三菱两大品牌的 PLC 编程知识&#xff0c;合适的学习资料能让学习效率事半功倍。本次整理了一批涵盖不同学习阶段的 PLC 编程资料&#xff0c;从零基础入门到针对性机型实操&#xff0c;覆…...

AI Agent Harness Engineering 的记忆架构:短期、长期与情景记忆的工程实现

AI Agent Harness Engineering 的记忆架构:短期、长期与情景记忆的工程实现 副标题:构建具有类人记忆能力的智能代理系统完整指南 第一部分:引言与基础 (Introduction & Foundation) 1. 引人注目的标题 (Compelling Title) “AI Agent Harness Engineering 的记忆架构…...