呈现 UIView 的最少代码
Barest minimum code to present a UIView
创建一个创建 UIView 并将其显示在 iOS 设备屏幕上的项目的绝对最低限度代码是多少?
没有故事板、模板或任何其他发明。只是最简单的 UIView 展示。
我很欣赏模板可以用来制作东西 "easier",但是为了理解所有东西是如何协同工作的,我想尝试构思框架及其与 OS 以最简单、真正基于代码的形式。
即没有情节提要及其所有流程。纯代码。
我试过使用 google 找到一些与某人以整体方式讨论 iOS 的东西,以便清楚地查看视图...但这都是关于 "ease"据我所知,而不是理解。
和Swift。
// 所有双关语都是无意的刺激副产品。
编辑:::
在没有视图控制器、情节提要等的情况下,我如何开始一个新项目?似乎只有基于故事板的模板,无法启动 "blank" 项目。
最低限度就是这个,只需将其放在您的应用委托中,删除其他 .swift 文件,这应该是您需要的最低限度:
import UIKit
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
var rootViewController: UINavigationController?
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
self.window = UIWindow(frame: UIScreen.mainScreen().bounds)
rootViewController = UINavigationController(rootViewController: ViewController())
self.window!.rootViewController = rootViewController
self.window!.makeKeyAndVisible()
return true
}
}
这需要零故事板,但是如果你想为所有这些添加一个 VIEW 并控制那个 uiview,那么这样做:
import UIKit
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
var rootViewController: UINavigationController?
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
self.window = UIWindow(frame: UIScreen.mainScreen().bounds)
var firstVC = UIViewController()
var firstVCView = UIView()
firstVCView.backgroundColor = UIColor.redColor()
firstVC.view = firstVCView
rootViewController = UINavigationController(rootViewController: firstVC) self.window!.rootViewController = rootViewController
self.window!.makeKeyAndVisible()
return true
}
}
我可以从头开始向您展示,我将开始一个全新的项目并将其删除:
方法如下:
select单视图应用项目
进入info.plist文件,删除这两个条目:
然后,删除故事板和笔尖。
保留 "ViewController.swift" 文件
将其放入您的 AppDelegate.swift:
import UIKit
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
var rootViewController: UINavigationController?
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
self.window = UIWindow(frame: UIScreen.mainScreen().bounds)
rootViewController = UINavigationController(rootViewController: ViewController())
self.window!.rootViewController = rootViewController
self.window!.makeKeyAndVisible()
return true
}
}
然后,执行此操作,单击“否”按钮 "use asset catalog"
单击要使用资产目录的弹出框,然后确保此字段为空,其中显示 "launch screen file"
编译并运行你的项目
一个带有应用委托的完全空的应用程序,在 didFinishLaunchingWithOptions
中,这将呈现一个视图:
self.window.rootViewController = [UIViewController new];
UIViewController
中有一个视图
创建一个创建 UIView 并将其显示在 iOS 设备屏幕上的项目的绝对最低限度代码是多少?
没有故事板、模板或任何其他发明。只是最简单的 UIView 展示。
我很欣赏模板可以用来制作东西 "easier",但是为了理解所有东西是如何协同工作的,我想尝试构思框架及其与 OS 以最简单、真正基于代码的形式。
即没有情节提要及其所有流程。纯代码。
我试过使用 google 找到一些与某人以整体方式讨论 iOS 的东西,以便清楚地查看视图...但这都是关于 "ease"据我所知,而不是理解。
和Swift。
// 所有双关语都是无意的刺激副产品。
编辑:::
在没有视图控制器、情节提要等的情况下,我如何开始一个新项目?似乎只有基于故事板的模板,无法启动 "blank" 项目。
最低限度就是这个,只需将其放在您的应用委托中,删除其他 .swift 文件,这应该是您需要的最低限度:
import UIKit
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
var rootViewController: UINavigationController?
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
self.window = UIWindow(frame: UIScreen.mainScreen().bounds)
rootViewController = UINavigationController(rootViewController: ViewController())
self.window!.rootViewController = rootViewController
self.window!.makeKeyAndVisible()
return true
}
}
这需要零故事板,但是如果你想为所有这些添加一个 VIEW 并控制那个 uiview,那么这样做:
import UIKit
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
var rootViewController: UINavigationController?
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
self.window = UIWindow(frame: UIScreen.mainScreen().bounds)
var firstVC = UIViewController()
var firstVCView = UIView()
firstVCView.backgroundColor = UIColor.redColor()
firstVC.view = firstVCView
rootViewController = UINavigationController(rootViewController: firstVC) self.window!.rootViewController = rootViewController
self.window!.makeKeyAndVisible()
return true
}
}
我可以从头开始向您展示,我将开始一个全新的项目并将其删除:
方法如下:
select单视图应用项目
进入info.plist文件,删除这两个条目:
然后,删除故事板和笔尖。
保留 "ViewController.swift" 文件
将其放入您的 AppDelegate.swift:
import UIKit @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { var window: UIWindow? var rootViewController: UINavigationController? func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { self.window = UIWindow(frame: UIScreen.mainScreen().bounds) rootViewController = UINavigationController(rootViewController: ViewController()) self.window!.rootViewController = rootViewController self.window!.makeKeyAndVisible() return true } }
然后,执行此操作,单击“否”按钮 "use asset catalog"
单击要使用资产目录的弹出框,然后确保此字段为空,其中显示 "launch screen file"
编译并运行你的项目
一个带有应用委托的完全空的应用程序,在 didFinishLaunchingWithOptions
中,这将呈现一个视图:
self.window.rootViewController = [UIViewController new];
UIViewController