{"id":20199309,"url":"https://github.com/rockchanel/swform","last_synced_at":"2025-04-10T11:08:43.553Z","repository":{"id":202258076,"uuid":"135227261","full_name":"RockChanel/SWForm","owner":"RockChanel","description":"iOS 高度封装自适应表单(重构版)","archived":false,"fork":false,"pushed_at":"2019-03-28T06:14:00.000Z","size":520,"stargazers_count":160,"open_issues_count":4,"forks_count":31,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-24T09:52:54.366Z","etag":null,"topics":["form","objective-c","tableview"],"latest_commit_sha":null,"homepage":"","language":"Objective-C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RockChanel.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2018-05-29T01:45:19.000Z","updated_at":"2024-08-16T16:42:17.000Z","dependencies_parsed_at":null,"dependency_job_id":"1de9c47c-301b-4a45-9b41-d5005dba59a0","html_url":"https://github.com/RockChanel/SWForm","commit_stats":null,"previous_names":["rockchanel/swform"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RockChanel%2FSWForm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RockChanel%2FSWForm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RockChanel%2FSWForm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RockChanel%2FSWForm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RockChanel","download_url":"https://codeload.github.com/RockChanel/SWForm/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248208549,"owners_count":21065202,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["form","objective-c","tableview"],"created_at":"2024-11-14T04:37:01.830Z","updated_at":"2025-04-10T11:08:43.509Z","avatar_url":"https://github.com/RockChanel.png","language":"Objective-C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SWForm\n\n\u003e详细说明戳这里：[iOS 高度封装自适应表单(重构版)](https://www.jianshu.com/p/2d2f742622fa)\n\n![image](https://github.com/RockChanel/SWGIF/blob/master/SWForm/SWForm.gif)\n\n![image](https://github.com/RockChanel/SWGIF/blob/master/SWForm/SWForm_1.png)\n\n`SWForm` 旨在快捷构建表单系统框架，支持大部分表单系统所需条目样式，且包含了图片附件、编辑、新增、详情等功能的拓展.\n\n### Warning\n\n若下载项目之后，运行报错 `incompatible project version`，是由于此项目创建 Xcode 版本为 `9.4.1`。若运行 Xcode 版本低于此版本，解决方法如下：\n\n方法一：更新 Xcode 版本\n\n方法二：右键 `SWFormExample.xcodeproj`， 点击显示包内容，打开 `project.pbxproj` 文件，修改降低 `objectVersion` 即可运行\n\n### 使用方式\n\n使用 `SWForm` 框架只需将 `SWForm`文件夹导入项目中，将所有可定制化配置的接口都已经统一入口，方便使用者根据自身需求实现定制化功能.\n\n本项目中提供了所有定制化接口的示例 `SWFormDemo`，以作为参考。\n\n\u003cbr/\u003e\n\n`SWForm` 根据需求提供了三个接口文件，以方便使用者实现高度定制化，分别为 `UIImageView+FormImage`、`SWFormImageCell+ImageHandle`、`SWFormHandler`.\n\n\u003cbr/\u003e\n\n`UIImageView+FormImage` 针对表单图片条目图片加载提供接口:\n```objective-c\n- (void)sw_setImageItemWithUrl:(NSURL *)url;\n```\n\u003cbr/\u003e\n\n`SWFormImageCell+ImageHandle` 提供图片添加接口以及图片预览接口，使用者可以在此接口添加自定义图片选择以及图片预览功能:\n```objective-c\n/**\n 选择图片数据回调\n \n @param maxImages 最大可选择图片数\n @param currentImages 当前选择图片数\n @param completion 选择图片数组回调\n */\n- (void)sw_selectImageWithMaxImages:(NSInteger)maxImages currentImages:(NSInteger)currentImages completion:(void(^)(NSArray *selectImages))completion;\n\n/**\n 图片浏览\n\n @param images 图片数组\n @param currentIndex 当前浏览的index\n */\n- (void)sw_photoBrowserWithImages:(NSArray *)images currentIndex:(NSInteger)currentIndex;\n```\n\n\u003cbr/\u003e\n\n`SWFormHandler` 为数据校验文件，提供了相机权限、相册权限以及表单空数据校验功能:\n```objective-c\n/**\n 必选(必填)数据空数据校验，可根据需求定制\n\n @param datas 表单数据源\n @param success 必选(必填)数据全部校验成功\n @param failure 必选(必填)数据某一项校验失败\n */\n+ (void)sw_checkFormNullDataWithWithDatas:(NSArray *)datas success:(void(^)(void))success failure:(void(^)(NSString *error))failure;\n\n/**\n 校验是否有相机权限\n */\n+ (void)sw_checkCameraAuthorizationStatusWithGrand:(void(^)(BOOL granted))permissionGranted;\n\n/**\n 校验是否有相册权限\n */\n+ (void)sw_checkAlbumAuthorizationStatusWithGrand:(void(^)(BOOL granted))permissionGranted;\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frockchanel%2Fswform","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frockchanel%2Fswform","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frockchanel%2Fswform/lists"}