问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

UI设计师必修课:掌握Storyboard提升职业竞争力

创作时间:
作者:
@小白创作中心

UI设计师必修课:掌握Storyboard提升职业竞争力

引用
CSDN
8
来源
1.
https://blog.csdn.net/jeikerxiao/article/details/51753084
2.
https://www.woshipm.com/pmd/876216.html
3.
https://www.cnblogs.com/strengthen/p/10092618.html
4.
https://rolecatcher.com/zh-hans/skills/hard-skills/communication-collaboration-and-creativity/creating-artistic-visual-or-instructive-materials/use-storyboards/
5.
https://www.uied.cn/27707.html
6.
https://www.showapi.com/news/article/66e93a2f4ddd79f11a175303
7.
https://juejin.cn/post/6951794291005980685
8.
https://loadcool.com/ask/how-to-use-storyboards-in-interaction-design.html

在UI设计领域,Storyboard(故事板)已经成为了设计师们不可或缺的重要工具。它不仅能够帮助设计师更好地表达设计意图,还能有效提升团队协作效率。本文将从Storyboard的基础概念出发,深入探讨其在UI设计中的具体应用,并分析掌握Storyboard技能对设计师职业发展的积极影响。

01

什么是Storyboard?

Storyboard最初源自动画制作领域,用于将故事情节通过一系列连续的插画呈现出来。而在UI设计中,Storyboard则被用来展示用户与产品的交互流程,将复杂的交互逻辑以可视化的方式呈现,帮助设计师和开发团队更好地理解用户操作路径和界面切换关系。

02

Storyboard在UI设计中的应用

1. 快速实例化控制器

在实际开发中,我们经常需要从多个Storyboard中取出控制器实例。为了避免因Storyboard Name和identifier不匹配导致的异常,可以采用UIViewController的类别方法。具体步骤如下:

  1. 确保Storyboard中的ViewController的类名和Storyboard ID相同
  2. 创建UIViewController的类别方法
  3. 使用dd_instanceFromStoryboard方法取出以调用者类名为identifier的实例

示例代码:

import UIKit

extension UIViewController {
    static func dd_instanceFromStoryboard(withIdentifier identifier: String) -> Self? {
        // 检查缓存中是否有对应的storyboard名字
        if let storyboardName = storyboardCache[identifier] {
            return UIStoryboard(name: storyboardName, bundle: nil).instantiateViewController(withIdentifier: identifier) as? Self
        }
        
        // 获取NSBundle的storyboard文件列表并筛选
        let storyboardNames = Bundle.main.infoDictionary?["UIMainStoryboardFile"] as? String
        let storyboardFiles = Bundle.main.paths(forResourcesOfType: "storyboardc", inDirectory: nil)
        
        for storyboardFile in storyboardFiles {
            let storyboardName = URL(fileURLWithPath: storyboardFile).deletingPathExtension().lastPathComponent
            if let viewController = UIStoryboard(name: storyboardName, bundle: nil).instantiateViewController(withIdentifier: identifier) as? Self {
                storyboardCache[identifier] = storyboardName
                return viewController
            }
        }
        
        return nil
    }
    
    private static var storyboardCache = [String: String]()
}

使用方式:

let vc = YouViewController.dd_instanceFromStoryboard()

2. 常用布局结构

在使用Storyboard搭建项目时,合理的布局结构能够帮助我们更清晰地管理界面层级关系。以下是一个常见的Storyboard布局结构示例:

  1. 打开Main.storyboard文件
  2. 选择初始的View Controller
  3. 依次点击:Editor -> Embed In -> Navigation Controller(嵌入导航控制器)
  4. 再次选择Navigation Controller,依次点击:Editor -> Embed In -> Tab Bar Controller(嵌入标签控制器)

通过上述步骤,我们可以构建出一个包含标签控制器和导航控制器的基本框架。接下来,可以通过拖拽方式添加新的View Controller,并使用Control键+鼠标左键的方式建立控制器之间的跳转关系。

03

掌握Storyboard对职业发展的帮助

Storyboard作为一项重要的视觉叙事工具,其价值已经得到了广泛认可。根据RoleCatcher的调研数据,Storyboard技能在现代劳动力中发挥着关键作用,尤其在电影、动画、广告、视频游戏开发、营销等行业中应用广泛。

对于UI设计师而言,掌握Storyboard技能能够带来以下职业优势:

  1. 提升沟通效率:通过可视化的方式展示设计思路,能够帮助团队成员更快理解设计意图,减少沟通成本。
  2. 优化设计流程:Storyboard能够帮助设计师提前发现潜在的设计问题,避免在开发阶段出现重大调整。
  3. 增强职业竞争力:具备Storyboard技能的设计师在求职市场上更具优势,因为这体现了其在视觉叙事和交互设计方面的专业能力。

从职业发展角度来看,Storyboard技能的学习路径可以分为三个阶段:

  • 初级阶段:了解Storyboard的基本原理和术语,通过在线教程和实践练习掌握基础技巧。
  • 中级阶段:深入研究高级Storyboard技术,参与实际项目,建立个人作品集。
  • 高级阶段:专注于特定行业的高级应用,如视频游戏开发或广告创意,通过持续实践和学习保持专业水平。

在面试准备阶段,设计师可以重点准备以下问题:

  • 你如何使用Storyboard来规划用户交互流程?
  • 在团队协作中,Storyboard如何帮助你与其他成员沟通设计思路?
  • 请分享一个你使用Storyboard解决设计难题的具体案例。

掌握Storyboard技能不仅能帮助UI设计师在工作中更加得心应手,还能为职业发展开辟新的可能性。随着Storyboard在各行业中的应用越来越广泛,这项技能的重要性也将日益凸显。对于希望在设计领域有所建树的从业者来说,投入时间和精力学习Storyboard无疑是一个明智的选择。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号