{"action":"created","comment":{"url":"https://api.github.com/repos/xitu/gold-miner/pulls/comments/58313060","id":58313060,"diff_hunk":"@@ -1,490 +1,528 @@\n >* 原文链接 : [UIScrollView Tutorial: Getting Started](https://www.raywenderlich.com/122139/uiscrollview-tutorial)\n-* 原文作者 : [Corinne Krych](https://www.raywenderlich.com/u/ckrych)\n-* 译文出自 : [掘金翻译计划](https://github.com/xitu/gold-miner)\n-* 译者 : \n-* 校对者: \n-* 状态： 认领中\n+>* 原文作者 : [Corinne Krych](https://www.raywenderlich.com/u/ckrych)\n+>* 译文出自 : [掘金翻译计划](https://github.com/xitu/gold-miner)\n+>* 译者 : [Zhongyi Tong (geeeeeeeeek)](https://github.com/geeeeeeeeek)\n+>* 校对者:\n \n \n-_Note from Ray_: This is a Swift update to a popular Objective-C tutorial on our site. Update to Swift, iOS 9 and Xcode 7.1.1 by Corinne Krych; [Original post](https://www.raywenderlich.com/?p=10518) by Tutorial Team member [Matt Galloway](http://www.raywenderlich.com/u/mattjgalloway). Enjoy!\n+# UIScrollView新手教程\n \n-`UIScrollView` is one of the most versatile and useful controls in iOS. It is the basis for the very popular `UITableView` and is a great way to present content larger than a single screen. In this `UIScrollView` tutorial, by building an app very similar to the Photos app, you’ll learn all about using this control. You’ll learn:\n+_Ray的温馨提示_：这是本站原先Objective-C热门教程的Swift升级版。Corinne Krych将教程升级到了Swift, iOS 9和Xcode 7.1.1；[原文](https://www.raywenderlich.com/?p=10518)由教程团队成员[Matt Galloway](http://www.raywenderlich.com/u/mattjgalloway)编写。阅读愉快！\n \n-*   How to use a `UIScrollView` to zoom and view a very large image.\n-*   How to keep the `UIScrollView`‘s content centered while zooming.\n-*   How to use `UIScrollView` for vertical scrolling with Auto Layout.\n-*   How to keep text input components visible when the keyboard is displayed.\n-*   How to use `UIPageViewController`, in conjunction with UIPageControl, to allow scrolling through multiple pages of content.\n+`UIScrollView`是iOS中最灵活和有用的控件之一。它是十分流行的`UITableView`控件的基础，能够友好地展示超过一屏的内容。在这份`UIScrollView`教程中，通过构建一个类似Photos的应用，你会了解到这个控件的方方面面。 具体地，你会学到：\n \n-This tutorial assumes that you know how to use Interface Builder to add new objects to a view and connect outlets between your code and the Storyboard. You’ll want to be familiar with Storyboards before proceeding, so definitely take a look at our [Storyboards tutorial](https://www.raywenderlich.com/?p=5138) if you’re new to them.\n+*   如何使用`UIScrollView`来缩放视图，查看大图\n+*   如何在缩放时保持`UIScrollView`的内容居中\n+*   如何在自动布局时使用`UIScrollView`进行竖直滚动\n+*   如何在键盘呼出时保持文本输入控件可见\n+*   如何和`UIPageControl`一起使用`UIPageViewController`，实现内容多页连播\n \n-## Getting Started\n+这份教程假定你会使用Interface Builder给一个视图添加新的对象，连接你的代码和StoryBoard。在开始之前你需要熟悉Storyboard，所以如果你没有接触过的话，一定要看一下我们的[Storyboard教程(然而并没有翻译)](https://www.raywenderlich.com/?p=5138)。\n \n-Click [here](http://www.raywenderlich.com/wp-content/uploads/2016/01/PhotoScroll_Starter.zip) to download the starter project for this `UIScrollView` tutorial, and then open it in Xcode.\n+## 开始吧\n \n-Build and run to see what you’re starting with:\n+点击[这里](http://www.raywenderlich.com/wp-content/uploads/2016/01/PhotoScroll_Starter.zip)下载这份`UIScrollView`的初始项目，然后在Xcode中打开。\n+\n+Build之后运行，看看我们最初的项目：\n \n ![uiscrollview tutorial](http://www.raywenderlich.com/wp-content/uploads/2015/12/starter1.gif)\n \n-When selecting a photo, you can see it full sized. But, sadly, the photo is cropped. You can not see the whole image with the limited size of your device. What you really want is for the image to fit the device’s screen by default, and then be able to zoom to see details as you would do in the Photos app.\n+选中图片时，你看到它变成了全屏。但遗憾的是，图片被裁剪了。由于设备尺寸的限制，你无法看到整张图片。你真正想要的是让图片默认适应设备的屏幕，并且能够放大观察细节，就像在Photos应用中一样。\n \n-Can you fix it? Yes you can!\n+你能解决吗？当然了！\n \n-## Scrolling and Zooming a Large Image\n+## 大图滚动和缩放\n \n-The first thing you’re going to learn in this `UIScrollView` tutorial is how to set up a scroll view that allows the user to zoom into an image and pan around.\n+这份`UIScrollView`教程教给你的第一件事是，如何设置一个滚动视图，允许用户缩放、移动图片。\n \n-First, you need to add a Scroll View. Open _Main.storyboard_, drag a _Scroll View_ from the _Object Library_ and drop it in Document Outline just under _View_ of _Zoomed Photo View Controller Scene_. Move _Image View_ inside your newly added _Scroll View_. Your document outline should now look like this:\n+首先，你需要添加一个滚动视图。打开_Main.storyboard_，从_Object Library_拖动一个_Scroll View_，放到_Zoomed Photo View Controller Scene_视图下的Document Outline。将_Image View_移动到你新建的_Scroll View_中。你的Document Outline现在应该是这样的：\n \n-![](http://ww4.sinaimg.cn/large/005SiNxygw1f1ysxw8ed9j30jg09etbj.jpg)](http://www.raywenderlich.com/wp-content/uploads/2016/01/Screen-Shot-2016-01-05-at-8.42.59-PM.png)\n+![](http://ww4.sinaimg.cn/large/005SiNxygw1f1ysxw8ed9j30jg09etbj.jpg)![](http://www.raywenderlich.com/wp-content/uploads/2016/01/Screen-Shot-2016-01-05-at-8.42.59-PM.png)\n \n-See that red dot? Xcode is now complaining that your Auto Layout rules are not properly defined. To fix them first select your _Scroll View_. Tap the Pin button at the bottom of the storyboard window. Add four new constraints: top, bottom, leading and trailing spaces. Uncheck _Constrain to margins_ and set all the constraint constants to 0.\n+看到红点了么？Xcode正在提示你有一些自动布局的规则没有被正确地定义。为了解决这个问题，选中你的_Scroll View_，点击Storyboard窗口底部的锁定按钮。添加四个新的约束：顶部、底部、前后间距。取消选中_Constrain to margins_，将所有的约束值都设为0。\n \n ![](http://ww1.sinaimg.cn/large/005SiNxygw1f1yswkubkaj30fj0dwmyl.jpg)\n \n-Now select _Image View_ and add the same four constraints to that view.\n+接下来选中_Image View_并添加相同约束。\n \n-Resolve the Auto Layout warning by selecting _Zoomed Photo View Controller_ in Document Outline, and then selecting _Editor\\Resolve Auto Layout Issues\\Update Frames_.\n+选中Document Outline中的_Zoomed Photo View Controller_来消除自动布局的警告，然后选择_Editor\\Resolve Auto Layout Issues\\Update Frames_。\n \n-Finally, uncheck _Adjust Scroll View Insets_ in Attributes Inspector for _Zoomed Photo View Controller_.\n+最后，在_Zoomed Photo View Controller_的Attribute Inspector中取消选中_Adjust Scroll View Insets_。\n \n-Build and run.\n+Build之后运行。\n \n ![uiscrollview tutorial](http://www.raywenderlich.com/wp-content/uploads/2015/12/starter2.gif)\n \n-Thanks to the Scroll View you can now see the full size image by swiping. But what if you want to see the picture scaled to fit the device screen? Or what if you want to zoom in or out of the photo?\n+多亏了滚动视图，你现在可以滑动查看原尺寸的图片了。但如果你希望图片大小适应屏幕呢？或者如果你希望放大或缩小图片呢？\n \n-Ready to start with some coding?\n+准备好开始写代码了吗？\n \n-Open _ZoomedPhotoViewController.swift_, inside the class declaration, add the following outlet properties:\n+打开_ZoomedPhotoViewController.swift_，在类声明中，添加下面的outlet属性：\n \n-    @IBOutlet weak var scrollView: UIScrollView! \n-    @IBOutlet weak var imageViewBottomConstraint: NSLayoutConstraint!\n-    @IBOutlet weak var imageViewLeadingConstraint: NSLayoutConstraint!\n-    @IBOutlet weak var imageViewTopConstraint: NSLayoutConstraint!\n-    @IBOutlet weak var imageViewTrailingConstraint: NSLayoutConstraint!\n+```swift\n+@IBOutlet weak var scrollView: UIScrollView! \n+@IBOutlet weak var imageViewBottomConstraint: NSLayoutConstraint!\n+@IBOutlet weak var imageViewLeadingConstraint: NSLayoutConstraint!\n+@IBOutlet weak var imageViewTopConstraint: NSLayoutConstraint!\n+@IBOutlet weak var imageViewTrailingConstraint: NSLayoutConstraint!\n+```\n \n-Back in _Main.storyboard_, wire up the _Scroll View_ to the _Zoomed View Controller_ by attaching it to the `scrollView` outlet and setting _Zoomed View Controller_ as the _Scroll View_’s delegate. Also, connect the new constraint outlets from _Zoomed View Controller_ to the appropriate constraints in the _Document Outline_ like this:\n+回到_Main.storyboard_，为了将_Scroll View_和__Zoomed View Controller_组装起来，我们需要将它添加到`scrollView` outlet，将_Zoomed View Controller_设置为_Scroll View_的代理。同样地，将_Zoomed View Controller_中新的约束outlet连接到_Document Outline_中相应的约束，就像这样：\n \n-![](http://ww1.sinaimg.cn/large/005SiNxygw1f1yt7ib5j1j30jg09etbj.jpg)](http://www.raywenderlich.com/wp-content/uploads/2016/01/Screen-Shot-2016-01-05-at-8.53.38-PM.png)\n+![](http://ww1.sinaimg.cn/large/005SiNxygw1f1yt7ib5j1j30jg09etbj.jpg)![](http://www.raywenderlich.com/wp-content/uploads/2016/01/Screen-Shot-2016-01-05-at-8.53.38-PM.png)\n \n-Now you’re going to get down and dirty with the code. In _ZoomedPhotoViewController.swift_, add the implementation of the `UIScrollViewDelegate`‘s methods as an extension:\n+现在，你要开始接触到代码。在_ZoomedPhotoViewController.swift_中，将`UIScrollViewDelegate`方法的实现添加为扩展：\n \n-    extension ZoomedPhotoViewController: UIScrollViewDelegate {\n-      func viewForZoomingInScrollView(scrollView: UIScrollView) -> UIView? {\n-        return imageView\n-      }\n-    }\n+```swift\n+extension ZoomedPhotoViewController: UIScrollViewDelegate {\n+  func viewForZoomingInScrollView(scrollView: UIScrollView) -> UIView? {\n+    return imageView\n+  }\n+}\n+```\n \n-This is the heart and soul of the scroll view’s zooming mechanism. You’re telling it which view should be made bigger and smaller when the scroll view is pinched. So, you tell it that it’s your `imageView`.\n+这就是滚动视图缩放原理的关键。你告诉它捏住滚动的视图时，哪个视图应该变大或变小。在这里，就是你的`imageView`。\n \n-Now, add the implementation of `updateMinZoomScaleForSize(_:)` to the `ZoomedPhotoViewController` class:\n+现在，将`updateMinZoomScaleForSize(_:)`的实现添加到`ZoomedPhotoViewController`类：\n \n-    private func updateMinZoomScaleForSize(size: CGSize) {\n-      let widthScale = size.width / imageView.bounds.width\n-      let heightScale = size.height / imageView.bounds.height\n-      let minScale = min(widthScale, heightScale)  \n+```swift\n+private func updateMinZoomScaleForSize(size: CGSize) {\n+  let widthScale = size.width / imageView.bounds.width\n+  let heightScale = size.height / imageView.bounds.height\n+  let minScale = min(widthScale, heightScale)  \n \n-      scrollView.minimumZoomScale = minScale \n+  scrollView.minimumZoomScale = minScale \n \n-      scrollView.zoomScale = minScale\n-    }\n+  scrollView.zoomScale = minScale\n+}\n+```\n \n-You need to work out the minimum zoom scale for the scroll view. A zoom scale of one means that the content is displayed at normal size. A zoom scale below one shows the content zoomed out, while a zoom scale of greater than one shows the content zoomed in. To get the minimum zoom scale, you calculate how far you’d need to zoom out so that the image fits snugly in your scroll view’s bounds based on its width. Then you do the same based upon the image’s height. The minimum of those two resulting zoom scales will be the scroll view’s minimum zoom scale. That gives you a zoom scale where you can see the entire image when fully zoomed out. Note that maximum zoom scale defaults to 1\\. You leave it as the default because zooming in more than what the image’s resolution can support will cause it to look blurry.\n+你需要确定滚动视图的最小缩放比例。缩放比例的意思是内容以正常大小显示的比例。小于这个比例内容会被缩小，大于这个比例内容会被放大。为了确定最小缩放比例，你要计算图片的宽度需要缩小多少才能紧紧地贴合在滚动视图的边界上。然后对图片的高度做同样的事。这两者中更小的比例就是滚动视图的最小缩放比例。按这个比例缩小之后你可以看到整张图片。注意最大缩放比例默认为1。你不用修改这个比例，因为放大到超过了图片的分辨率会使图片看上去模糊。\n \n-You set the initial zoom scale to be the minimum, so that the image starts fully zoomed out.\n+你可以将初始的缩放比例设为最小缩放比例，这样图像一开始就是完全缩小到适应屏幕的。\n \n-Finally, update the minimum zoom scale each time the controller updates it’s subviews:\n+最后，每次控制器更新子视图时更新最小缩放比例：\n \n-    override func viewDidLayoutSubviews() {\n-      super.viewDidLayoutSubviews()\n+```swift\n+override func viewDidLayoutSubviews() {\n+  super.viewDidLayoutSubviews()\n \n-      updateMinZoomScaleForSize(view.bounds.size)\n-    }\n+  updateMinZoomScaleForSize(view.bounds.size)\n+}\n+```\n \n-Build and run. You should get the following result:\n+Build之后运行。你可以看到下面的结果：","path":"TODO/uiscrollview-tutorial.md","position":174,"original_position":174,"commit_id":"6e11b6ed8ef240a562405ae8eeea0b3ccd4403d6","original_commit_id":"6e11b6ed8ef240a562405ae8eeea0b3ccd4403d6","user":{"login":"Tuccuay","id":1336967,"avatar_url":"https://avatars.githubusercontent.com/u/1336967?v=3","gravatar_id":"","url":"https://api.github.com/users/Tuccuay","html_url":"https://github.com/Tuccuay","followers_url":"https://api.github.com/users/Tuccuay/followers","following_url":"https://api.github.com/users/Tuccuay/following{/other_user}","gists_url":"https://api.github.com/users/Tuccuay/gists{/gist_id}","starred_url":"https://api.github.com/users/Tuccuay/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Tuccuay/subscriptions","organizations_url":"https://api.github.com/users/Tuccuay/orgs","repos_url":"https://api.github.com/users/Tuccuay/repos","events_url":"https://api.github.com/users/Tuccuay/events{/privacy}","received_events_url":"https://api.github.com/users/Tuccuay/received_events","type":"User","site_admin":false},"body":"|before|after|\r\n|---|---|\r\n|Build之后运行|编译并运行|","created_at":"2016-04-03T16:36:12Z","updated_at":"2016-04-03T16:36:12Z","html_url":"https://github.com/xitu/gold-miner/pull/221#discussion_r58313060","pull_request_url":"https://api.github.com/repos/xitu/gold-miner/pulls/221","_links":{"self":{"href":"https://api.github.com/repos/xitu/gold-miner/pulls/comments/58313060"},"html":{"href":"https://github.com/xitu/gold-miner/pull/221#discussion_r58313060"},"pull_request":{"href":"https://api.github.com/repos/xitu/gold-miner/pulls/221"}}},"pull_request":{"url":"https://api.github.com/repos/xitu/gold-miner/pulls/221","id":64491015,"html_url":"https://github.com/xitu/gold-miner/pull/221","diff_url":"https://github.com/xitu/gold-miner/pull/221.diff","patch_url":"https://github.com/xitu/gold-miner/pull/221.patch","issue_url":"https://api.github.com/repos/xitu/gold-miner/issues/221","number":221,"state":"open","locked":false,"title":"UIScrollView新手教程","user":{"login":"geeeeeeeeek","id":7262715,"avatar_url":"https://avatars.githubusercontent.com/u/7262715?v=3","gravatar_id":"","url":"https://api.github.com/users/geeeeeeeeek","html_url":"https://github.com/geeeeeeeeek","followers_url":"https://api.github.com/users/geeeeeeeeek/followers","following_url":"https://api.github.com/users/geeeeeeeeek/following{/other_user}","gists_url":"https://api.github.com/users/geeeeeeeeek/gists{/gist_id}","starred_url":"https://api.github.com/users/geeeeeeeeek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/geeeeeeeeek/subscriptions","organizations_url":"https://api.github.com/users/geeeeeeeeek/orgs","repos_url":"https://api.github.com/users/geeeeeeeeek/repos","events_url":"https://api.github.com/users/geeeeeeeeek/events{/privacy}","received_events_url":"https://api.github.com/users/geeeeeeeeek/received_events","type":"User","site_admin":false},"body":"咩。感觉术语翻译的尺度比较难掌握，好多在Xcode里都是直接显示的，然而不翻的话英文都连起来了，真是纠结…","created_at":"2016-03-29T16:09:13Z","updated_at":"2016-04-03T16:36:12Z","closed_at":null,"merged_at":null,"merge_commit_sha":"a19402ef0debb68690f61dc059727fd24363cc15","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/xitu/gold-miner/pulls/221/commits","review_comments_url":"https://api.github.com/repos/xitu/gold-miner/pulls/221/comments","review_comment_url":"https://api.github.com/repos/xitu/gold-miner/pulls/comments{/number}","comments_url":"https://api.github.com/repos/xitu/gold-miner/issues/221/comments","statuses_url":"https://api.github.com/repos/xitu/gold-miner/statuses/6e11b6ed8ef240a562405ae8eeea0b3ccd4403d6","head":{"label":"geeeeeeeeek:master","ref":"master","sha":"6e11b6ed8ef240a562405ae8eeea0b3ccd4403d6","user":{"login":"geeeeeeeeek","id":7262715,"avatar_url":"https://avatars.githubusercontent.com/u/7262715?v=3","gravatar_id":"","url":"https://api.github.com/users/geeeeeeeeek","html_url":"https://github.com/geeeeeeeeek","followers_url":"https://api.github.com/users/geeeeeeeeek/followers","following_url":"https://api.github.com/users/geeeeeeeeek/following{/other_user}","gists_url":"https://api.github.com/users/geeeeeeeeek/gists{/gist_id}","starred_url":"https://api.github.com/users/geeeeeeeeek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/geeeeeeeeek/subscriptions","organizations_url":"https://api.github.com/users/geeeeeeeeek/orgs","repos_url":"https://api.github.com/users/geeeeeeeeek/repos","events_url":"https://api.github.com/users/geeeeeeeeek/events{/privacy}","received_events_url":"https://api.github.com/users/geeeeeeeeek/received_events","type":"User","site_admin":false},"repo":{"id":52164493,"name":"gold-miner","full_name":"geeeeeeeeek/gold-miner","owner":{"login":"geeeeeeeeek","id":7262715,"avatar_url":"https://avatars.githubusercontent.com/u/7262715?v=3","gravatar_id":"","url":"https://api.github.com/users/geeeeeeeeek","html_url":"https://github.com/geeeeeeeeek","followers_url":"https://api.github.com/users/geeeeeeeeek/followers","following_url":"https://api.github.com/users/geeeeeeeeek/following{/other_user}","gists_url":"https://api.github.com/users/geeeeeeeeek/gists{/gist_id}","starred_url":"https://api.github.com/users/geeeeeeeeek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/geeeeeeeeek/subscriptions","organizations_url":"https://api.github.com/users/geeeeeeeeek/orgs","repos_url":"https://api.github.com/users/geeeeeeeeek/repos","events_url":"https://api.github.com/users/geeeeeeeeek/events{/privacy}","received_events_url":"https://api.github.com/users/geeeeeeeeek/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/geeeeeeeeek/gold-miner","description":"掘金翻译计划，翻译掘金上优质的英文文章","fork":true,"url":"https://api.github.com/repos/geeeeeeeeek/gold-miner","forks_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/forks","keys_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/keys{/key_id}","collaborators_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/teams","hooks_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/hooks","issue_events_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/issues/events{/number}","events_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/events","assignees_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/assignees{/user}","branches_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/branches{/branch}","tags_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/tags","blobs_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/git/refs{/sha}","trees_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/git/trees{/sha}","statuses_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/statuses/{sha}","languages_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/languages","stargazers_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/stargazers","contributors_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/contributors","subscribers_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/subscribers","subscription_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/subscription","commits_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/commits{/sha}","git_commits_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/git/commits{/sha}","comments_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/comments{/number}","issue_comment_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/issues/comments{/number}","contents_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/contents/{+path}","compare_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/compare/{base}...{head}","merges_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/merges","archive_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/downloads","issues_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/issues{/number}","pulls_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/pulls{/number}","milestones_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/milestones{/number}","notifications_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/labels{/name}","releases_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/releases{/id}","deployments_url":"https://api.github.com/repos/geeeeeeeeek/gold-miner/deployments","created_at":"2016-02-20T17:01:18Z","updated_at":"2016-03-04T05:34:51Z","pushed_at":"2016-03-29T16:07:18Z","git_url":"git://github.com/geeeeeeeeek/gold-miner.git","ssh_url":"git@github.com:geeeeeeeeek/gold-miner.git","clone_url":"https://github.com/geeeeeeeeek/gold-miner.git","svn_url":"https://github.com/geeeeeeeeek/gold-miner","homepage":"http://gold.xitu.io","size":8882,"stargazers_count":2,"watchers_count":2,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"xitu:master","ref":"master","sha":"aad175134af793153fb2dd99a1e7257ed6525f15","user":{"login":"xitu","id":10482599,"avatar_url":"https://avatars.githubusercontent.com/u/10482599?v=3","gravatar_id":"","url":"https://api.github.com/users/xitu","html_url":"https://github.com/xitu","followers_url":"https://api.github.com/users/xitu/followers","following_url":"https://api.github.com/users/xitu/following{/other_user}","gists_url":"https://api.github.com/users/xitu/gists{/gist_id}","starred_url":"https://api.github.com/users/xitu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xitu/subscriptions","organizations_url":"https://api.github.com/users/xitu/orgs","repos_url":"https://api.github.com/users/xitu/repos","events_url":"https://api.github.com/users/xitu/events{/privacy}","received_events_url":"https://api.github.com/users/xitu/received_events","type":"Organization","site_admin":false},"repo":{"id":45512989,"name":"gold-miner","full_name":"xitu/gold-miner","owner":{"login":"xitu","id":10482599,"avatar_url":"https://avatars.githubusercontent.com/u/10482599?v=3","gravatar_id":"","url":"https://api.github.com/users/xitu","html_url":"https://github.com/xitu","followers_url":"https://api.github.com/users/xitu/followers","following_url":"https://api.github.com/users/xitu/following{/other_user}","gists_url":"https://api.github.com/users/xitu/gists{/gist_id}","starred_url":"https://api.github.com/users/xitu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xitu/subscriptions","organizations_url":"https://api.github.com/users/xitu/orgs","repos_url":"https://api.github.com/users/xitu/repos","events_url":"https://api.github.com/users/xitu/events{/privacy}","received_events_url":"https://api.github.com/users/xitu/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/xitu/gold-miner","description":"掘金翻译计划，翻译掘金上优质的英文文章","fork":false,"url":"https://api.github.com/repos/xitu/gold-miner","forks_url":"https://api.github.com/repos/xitu/gold-miner/forks","keys_url":"https://api.github.com/repos/xitu/gold-miner/keys{/key_id}","collaborators_url":"https://api.github.com/repos/xitu/gold-miner/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/xitu/gold-miner/teams","hooks_url":"https://api.github.com/repos/xitu/gold-miner/hooks","issue_events_url":"https://api.github.com/repos/xitu/gold-miner/issues/events{/number}","events_url":"https://api.github.com/repos/xitu/gold-miner/events","assignees_url":"https://api.github.com/repos/xitu/gold-miner/assignees{/user}","branches_url":"https://api.github.com/repos/xitu/gold-miner/branches{/branch}","tags_url":"https://api.github.com/repos/xitu/gold-miner/tags","blobs_url":"https://api.github.com/repos/xitu/gold-miner/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/xitu/gold-miner/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/xitu/gold-miner/git/refs{/sha}","trees_url":"https://api.github.com/repos/xitu/gold-miner/git/trees{/sha}","statuses_url":"https://api.github.com/repos/xitu/gold-miner/statuses/{sha}","languages_url":"https://api.github.com/repos/xitu/gold-miner/languages","stargazers_url":"https://api.github.com/repos/xitu/gold-miner/stargazers","contributors_url":"https://api.github.com/repos/xitu/gold-miner/contributors","subscribers_url":"https://api.github.com/repos/xitu/gold-miner/subscribers","subscription_url":"https://api.github.com/repos/xitu/gold-miner/subscription","commits_url":"https://api.github.com/repos/xitu/gold-miner/commits{/sha}","git_commits_url":"https://api.github.com/repos/xitu/gold-miner/git/commits{/sha}","comments_url":"https://api.github.com/repos/xitu/gold-miner/comments{/number}","issue_comment_url":"https://api.github.com/repos/xitu/gold-miner/issues/comments{/number}","contents_url":"https://api.github.com/repos/xitu/gold-miner/contents/{+path}","compare_url":"https://api.github.com/repos/xitu/gold-miner/compare/{base}...{head}","merges_url":"https://api.github.com/repos/xitu/gold-miner/merges","archive_url":"https://api.github.com/repos/xitu/gold-miner/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/xitu/gold-miner/downloads","issues_url":"https://api.github.com/repos/xitu/gold-miner/issues{/number}","pulls_url":"https://api.github.com/repos/xitu/gold-miner/pulls{/number}","milestones_url":"https://api.github.com/repos/xitu/gold-miner/milestones{/number}","notifications_url":"https://api.github.com/repos/xitu/gold-miner/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/xitu/gold-miner/labels{/name}","releases_url":"https://api.github.com/repos/xitu/gold-miner/releases{/id}","deployments_url":"https://api.github.com/repos/xitu/gold-miner/deployments","created_at":"2015-11-04T03:29:13Z","updated_at":"2016-04-03T14:47:08Z","pushed_at":"2016-03-29T16:09:13Z","git_url":"git://github.com/xitu/gold-miner.git","ssh_url":"git@github.com:xitu/gold-miner.git","clone_url":"https://github.com/xitu/gold-miner.git","svn_url":"https://github.com/xitu/gold-miner","homepage":"http://gold.xitu.io","size":9019,"stargazers_count":896,"watchers_count":896,"language":null,"has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":188,"mirror_url":null,"open_issues_count":26,"forks":188,"open_issues":26,"watchers":896,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/xitu/gold-miner/pulls/221"},"html":{"href":"https://github.com/xitu/gold-miner/pull/221"},"issue":{"href":"https://api.github.com/repos/xitu/gold-miner/issues/221"},"comments":{"href":"https://api.github.com/repos/xitu/gold-miner/issues/221/comments"},"review_comments":{"href":"https://api.github.com/repos/xitu/gold-miner/pulls/221/comments"},"review_comment":{"href":"https://api.github.com/repos/xitu/gold-miner/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/xitu/gold-miner/pulls/221/commits"},"statuses":{"href":"https://api.github.com/repos/xitu/gold-miner/statuses/6e11b6ed8ef240a562405ae8eeea0b3ccd4403d6"}}}}