← 返回
开发者工具

生成iOS视图UI

从截图生成 Objective-C iOS 视图代码,支持懒加载模式和布局/数据分离。当用户需要:(1) 从截图生成 iOS UI 代码,(2) 生成 Objective-C 视图控制器或视图代码,(3) 创建遵循懒加载规范的 iOS 视图时触发此技能。
从截图生成 Objective-C iOS 视图代码,支持懒加载模式和布局/数据分离。当用户需要:(1) 从截图生成 iOS UI 代码,(2) 生成 Objective-C 视图控制器或视图代码,(3) 创建遵循懒加载规范的 iOS 视图时触发此技能。
near2sea near2sea 来源
开发者工具 clawhub v1.0.0 1 版本 99894 Key: 无需
★ 0
Stars
📥 942
下载
💾 47
安装
1
版本
#latest

概述

iOS View Generator

从截图生成规范的 Objective-C iOS 视图代码。

核心规范

代码结构

#pragma mark - Life Cycle   // 生命周期
#pragma mark - UI           // UI 创建
#pragma mark - Layout         // 布局约束
#pragma mark - Data         // 数据加载
#pragma mark - Event Response // 事件响应
#pragma mark - Lazy Load    // 懒加载

三大原则

  1. 懒加载: 所有 UI 组件在 getter 中初始化
  2. 布局分离: setupUI 只负责 addSubView,setupConstraints 负责约束
  3. 数据分离: loadData 负责请求,refreshUI 负责绑定

生成流程

步骤 1: 分析截图

使用 image 工具分析用户提供的截图:

  • 识别 UI 层级结构
  • 提取控件类型、数量、位置
  • 估算尺寸和间距

步骤 2: 声明属性

@interface MyViewController ()
@property (nonatomic, strong) UIView *containerView;
@property (nonatomic, strong) UILabel *titleLabel;
// ... 其他属性
@end

步骤 3: 实现懒加载

每个组件独立 getter:

- (UILabel *)titleLabel {
    if (!_titleLabel) {
        _titleLabel = [[UILabel alloc] init];
        _titleLabel.font = [UIFont boldSystemFontOfSize:18];
        _titleLabel.textColor = [UIColor blackColor];
    }
    return _titleLabel;
}

步骤 4: UI 与布局分离

- (void)setupUI {
    [self.view addSubview:self.containerView];
    [self.containerView addSubview:self.titleLabel];
}

- (void)setupConstraints {
    [self.containerView mas_makeConstraints:^(MASConstraintMaker *make) {
        make.edges.equalTo(self.view).insets(UIEdgeInsetsMake(20, 15, 20, 15));
    }];
}

步骤 5: 数据加载

- (void)loadData {
    // 网络请求或本地数据
}

- (void)refreshUI {
    // 数据绑定到视图
    self.titleLabel.text = self.dataModel.title;
}

参考文档

详见 objc-view-patterns.md

  • 完整代码示例
  • 常用 UI 组件初始化模板
  • Masonry / 原生 Auto Layout 布局方式

注意事项

  • 默认使用 Masonry 布局,若无则生成原生 Auto Layout
  • 尺寸和间距使用估算值,用户可根据设计稿调整
  • 颜色使用系统颜色 (systemBlueColor 等),便于适配暗色模式
  • 图片资源使用占位符名称,用户需自行替换

版本历史

共 1 个版本

  • v1.0.0 当前
    2026-03-29 09:23 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

dev-programming

Mcporter

steipete
使用 mcporter CLI 直接列出、配置、认证及调用 MCP 服务器/工具(支持 HTTP 或 stdio),涵盖临时服务器、配置编辑及 CLI/类型生成功能。
★ 195 📥 67,422
business-ops

Todoist 任务可见性管理

near2sea
基于 Todoist 的任务可见性管理。用于创建、更新和追踪任务状态(进行中🟡、等待中🟠、已完成🟢),并记录进度评论。当用户提到 Todoist 任务管理、任务状态追踪、或需要使用 Todoist API 时触发。
★ 0 📥 1,472
dev-programming

Github

steipete
使用 `gh` CLI 与 GitHub 交互,通过 `gh issue`、`gh pr`、`gh run` 和 `gh api` 管理议题、PR、CI 运行及高级查询。
★ 677 📥 325,895