{"id":22433593,"url":"https://github.com/gavinning/glekit","last_synced_at":"2025-03-27T07:45:40.185Z","repository":{"id":56912159,"uuid":"128407806","full_name":"gavinning/GLEKit","owner":"gavinning","description":"一些基础库","archived":false,"fork":false,"pushed_at":"2018-04-08T07:01:02.000Z","size":97,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-05T17:44:25.612Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gavinning.png","metadata":{"files":{"readme":"readme.md","changelog":"changelog.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-04-06T14:47:16.000Z","updated_at":"2018-04-08T07:00:13.000Z","dependencies_parsed_at":"2022-08-20T20:20:50.678Z","dependency_job_id":null,"html_url":"https://github.com/gavinning/GLEKit","commit_stats":null,"previous_names":["gavinning/glib"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gavinning%2FGLEKit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gavinning%2FGLEKit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gavinning%2FGLEKit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gavinning%2FGLEKit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gavinning","download_url":"https://codeload.github.com/gavinning/GLEKit/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245806390,"owners_count":20675296,"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":[],"created_at":"2024-12-05T22:15:24.917Z","updated_at":"2025-03-27T07:45:40.161Z","avatar_url":"https://github.com/gavinning.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"GLEKit\n---\n一些基础扩展\n\n### Install\n```sh\npod install GLEKit\n```\n\n### Requirements\n* iOS 9.0+\n* Swift 4.0+\n\n### Usage\n```swift\n// GLE\n\n// 延迟\nGLE.delay(1.0) {\n    // do sth\n}\n\n// 根据某个view查询root ViewController\nlet rootViewController = GLE.findRootViewController(by: [:UIView])\n\n// 简单的日期格式化\nlet com = GLE.dateFormat(\"2016-16-18 18:00:00\", dateFormat: \"yyyy-MM-dd HH:mm:ss\")\ncom.year\ncom.month\ncom.day\ncom.hour\ncom.minute\ncom.second\n\n// 查询某个view的剩余空间\nlet size = GLE.remainderSize(from: [:UIView])\n```\n\n```swift\n// For Array\n\n// 创建一个2维矩阵\nfunc matrix( column: Int ) -\u003e [[Element]]\n\n// 截取区间 改变自身\nfunc slice(of range: Range\u003cInt\u003e)\n// 截取区间 改变自身\nfunc slice(start: Int, length: Int)\n\n// 截取区间 不改变自身\nfunc sliced(of range: Range\u003cInt\u003e) -\u003e [Element]?\n// 截取区间 不改变自身\nfunc sliced(start: Int, length: Int) -\u003e [Element]?\n\n// 某些场景需要数组删除一个区间，改变自身，并且返回删除的区间\n// 例如上面的matrix方法就是这样的应用场景\n// 不需要返回值的 可以调用内置的 removeSubrange 方法\nfunc remove(range: Range\u003cInt\u003e) -\u003e [Element]?\n\n// 删除指定的元素\nfunc remove\u003cT: Equatable\u003e(of element: T) -\u003e T?\n\n// 查找指定的元素索引\nfunc index\u003cT: Equatable\u003e(of element: T) -\u003e Int?\n```\n\n```swift\n// For String\n\n// 截取区间 改变自身\nfunc slice(of range: CountableRange\u003cInt\u003e)\n\n// 截取区间 改变自身\nfunc slice(start: Int, length: Int)\n\n// 截取区间 不改变自身\nfunc sliced(of range: CountableRange\u003cInt\u003e) -\u003e String?\n\n// 截取区间 不改变自身\nfunc sliced(start: Int, length: Int) -\u003e String?\n\n// 删除区间 改变自身 且返回删除区间\nfunc remove(range: CountableRange\u003cInt\u003e) -\u003e String?\n```\n\n```swift\n// For UIColor\n\n// 一个常用的便利方法 UIColor(0,0,0,0.1)\n// 内部自动除以255，参数直接传值即可\nconvenience init(_ r: CGFloat, _ g: CGFloat, _ b: CGFloat, _ a: CGFloat)\n```\n\n```swift\n// For UIImageView\n\n// 等比缩放图片 传入宽度等比缩放高度\nconvenience init?(name: String, x: CGFloat = 0, y: CGFloat = 0, width: CGFloat)\n\n// 等比缩放图片 传入高度等比缩放宽度\nconvenience init?(name: String, x: CGFloat = 0, y: CGFloat = 0, height: CGFloat)\n\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgavinning%2Fglekit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgavinning%2Fglekit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgavinning%2Fglekit/lists"}