
昨天用 Swift 重了之前的一源 PRSlideView, 今天整理好到 GitHub 上了.
注: 有到 CocoaPods 是因有足的磁空安新的工具通 CocoaPods 前. 你可以通我捐一台 最新的配 MacBook Pro 以解. XD
This is the Swift language version of PRSlideView.
Slide view with gracefully written UIKit-like methods, delegate and data source protocol. Infinite scrolling supported.
Note: Auto layout not supported due to the special behaviours of UIScrollView. Please use autoresizing mask instead or wrap it with a container view.
slideView.delegate = self slideView.dataSource = self slideView.scrollDirection = .Vertical slideView.infiniteScrollingEnabled = true slideView.registerClass( PRAlbumPage.self, identifier: PRAlbumPage.description() ) import UIKit public class PRAlbumPage: PRSlideViewPage { public private(set) var coverImageView: UIImageView required public init(frame: CGRect, identifier: String) { self.coverImageView = UIImageView() super.init(frame: frame, identifier: identifier) let coverImageView = self.coverImageView coverImageView.frame = self.bounds coverImageView.autoresizingMask = (.FlexibleWidth | .FlexibleHeight) coverImageView.contentMode = .ScaleAspectFit selfspan class="p">.addSubview(coverImageView) } required public init(coder aDecoder: NSCoder) { fatalError("init(coder:) has not been implemented") } } // MARK: PRSlideViewDataSource func numberOfPagesInSlideView(slideView: PRSlideView) -> Int { return self.albumData.count } func slideView(slideView: PRSlideView, pageAtIndex index: Int) -> PRSlideViewPage { let page: PRAlbumPage = slideView.dequeueReusablePageWithIdentifier(PRAlbumPage.description(), index: index) as PRAlbumPage let imageName: String = self.albumData[index].stringByAppendingPathExtension("jpg")! page.coverImageView.image = UIImage(named: imageName) return page } // MARK: PRSlideViewDelegate func slideView(slideView: PRSlideView, didScrollToPageAtIndex index: Int) { self.titleLabel.text = self.albumData[index] } func slideView(slideView: PRSlideView, didClickPageAtIndex index: Int) { let alertView: UIAlertView = UIAlertView( title: "You clicked on an album", message: "Title: \(self.albumData[index])", delegate: nil, cancelButtonTitle: "OK") alertView.show() } All done! You can check out the code in the demo provided.
This code is distributed under the terms and conditions of the MIT license.
You can support me by:
:-)
&nsp; 1 Cee 2015-01-26 20:59:08 +08:00 正好看到前来膜拜(ノ 。)ノ |
2 boom11235 2015-01-26 21:02:54 +08:00 膜拜 |
3 WildCat 2015-01-26 21:03:57 +08:00 膜拜 |
4 WildCat 2015-01-26 21:04:35 +08:00 膜拜(不能队形,楼上被吞了) |
5 RIcter 2015-01-26 21:15:57 +08:00 via iPad 捐赠顶配的mbpr! |
7 Livid MOD PRO 正确的姿势是点击主题下面的“感谢”按钮 |
9 msxcms 2015-01-26 22:28:08 +08:00 にっこにっこに |
10 KotiyaSanae 2015-01-27 00:58:58 +08:00 菊苣菊苣菊 |
11 moliliang 2015-01-27 01:31:47 +08:00 好想看看效果啊。。 |
13 hkongm 2015-01-27 08:49:57 +08:00 已感谢。 |
14 chenggiant 2015-01-27 09:28:41 +08:00 已感谢。 |
15 jprovim 2015-01-27 10:04:32 +08:00 的量OK. |
16 cralison 2015-01-27 10:17:54 +08:00 下来学习,谢谢:) |
17 ciwonderful 2015-01-27 12:50:07 +08:00 已感谢。 |
18 tony1016 2015-01-27 13:18:41 +08:00 不错哦,鼓励一下 |
19 Thu 2015-01-31 13:40:02 +08:00 Git上给两张效果图就更好了,在下载前能有个总体的印象 |