我想知道如何創建一排可以左右滑動的按鈕。例如在「剪下繩子」中,您可以左右滑動以找到您想要的框。我將如何實現這一點,並且能夠在稍後添加更多按鈕?在iOS中製作滑動視圖
-3
A
回答
0
您可以使用此代碼。
class ViewController: UIViewController {
@IBOutlet weak var categoryScrollView: UIScrollView!
var categoryArr = ["Button1","Button2","Button3","Button4","Button5"]
var buttonColors = [UIColor.greenColor(), UIColor.blueColor(), UIColor.blackColor(), UIColor.cyanColor(), UIColor.magentaColor()]
let kPadding:CGFloat = 10
override func viewDidLoad() {
super.viewDidLoad()
let buttonSize = CGSizeMake(categoryScrollView.bounds.size.width/2, categoryScrollView.bounds.size.height/2)//hal
let scrollingView = colorButtonsView(buttonSize, buttonCount: 5)
categoryScrollView.contentSize = scrollingView.frame.size
categoryScrollView.addSubview(scrollingView)
categoryScrollView.showsVerticalScrollIndicator = false
categoryScrollView.delegate = self
categoryScrollView.pagingEnabled = true
categoryScrollView.indicatorStyle = .Default
categoryScrollView.contentOffset = CGPointMake(0, 0)
}
func colorButtonsView(buttonSize:CGSize, buttonCount:Int) -> UIView {
let buttonView = UIView()
buttonView.frame.origin = CGPointMake(0,0)
let padding = CGSizeMake(kPadding, kPadding)
buttonView.frame.size.width = (buttonSize.width + padding.width) * CGFloat(buttonCount)
var buttonPosition = CGPointMake(0, padding.height)
let buttonIncrement = buttonSize.width + padding.width
for i in 0...(buttonCount - 1) {
let button = UIButton(type: .Custom)
button.frame.size = buttonSize
button.frame.origin = buttonPosition
buttonPosition.x = buttonPosition.x + buttonIncrement
button.setTitle(categoryArr[i], forState: UIControlState.Normal)
button.backgroundColor = buttonColors[i]
buttonView.addSubview(button)
}
buttonView.backgroundColor = UIColor.redColor()
return buttonView
}
}
extension ViewController:UIScrollViewDelegate{
func scrollViewDidEndDecelerating(scrollView: UIScrollView) {
let index = round(scrollView.contentOffset.x/scrollView.frame.size.width)
print(index)
}
}
0
要實現的滾動效果可以使用UIScrollView
或UICollectionView
來完成。
如果要實現某種具有多個自定義視圖的網格,最好使用UICollectionView
,因爲配置UIScrollView
的佈局會非常棘手。
你可以在這裏找到一些關於如何設置UICollectionView
的說明:Setting Up a UICollectionView in iOS。 它的API類似於UITableView
,但它可以水平和垂直滾動。與UITableViewCell
一樣,只需在UICollectionViewCells
內添加按鈕即可。
相關問題
- 1. 製作滑動視圖,類似於Android中的滑動視圖
- 2. 滑動視圖像iOS中的whatsapp(android)
- 3. 在另一個iOS上滑動視圖
- 4. 滑動視圖和視圖控制器
- 5. iOS - 在縱向滑動顯示主視圖控制器
- 6. 在android中滑動視圖
- 7. 如何在ios的單個視圖中滑動多個圖像
- 8. iOS「從左/右滑入」視圖動畫
- 9. 如何在滑動滾動視圖中控制自動滾動
- 10. 如何在文本視圖上製作更平滑的滑動上/下動畫?
- 11. iOS滑動手勢在同一ViewController中的不同視圖之間滑動
- 12. 如何製作在iOS中自動左右移動的滑塊?
- 13. 滑動視圖
- 14. 如何使用滾動在IOS中製作列表視圖
- 15. 如何在圖像滑塊中製作滑動效果?
- 16. iOS在另一個視圖中從側面滑動UIView(菜單)
- 17. 如何左右滑動在iOS中的桌面視圖sdk
- 18. 使用滑動視圖製作一個操作欄?
- 19. 具有滑動主視圖,滑動手勢的分割視圖控制器
- 20. Android中的滑動視圖
- 21. 在視圖之間滑動
- 22. 製作按鈕滑入視圖
- 23. 將UILabel滑動到視圖控制器
- 24. 向左滑動推視圖控制器
- 25. 如何在cocos2dx中爲iOS遊戲製作滑動菜單
- 26. 如何使用Intent將滑動視圖顯示在滑動視圖中?
- 27. Android滑動視圖
- 28. 動畫視圖控制器工作在iOS 5中,而不是iOS 4的
- 29. iOS中滑動菜單中的佈局視圖
- 30. 如何在Android中滑動視圖
請詳細說明該代碼如何回答問題。 – JAL
這段代碼允許我製作按鈕,這是我想要的。 –
尼克希望有一個滾動視圖,滾動的每個頁面都包含一個按鈕。所以基本上你創建一個滾動視圖,然後使用框架寬度(不是內容寬度)作爲滾動的一頁。然後創建一個視圖,該視圖等於每個按鈕的大小乘以每個按鈕的按鈕數+填充並將其放置在滾動視圖中。您將每個按鈕添加爲該父視圖的子視圖。當爲滾動視圖啓用分頁時,滾動視圖將每頁滾動一次,並在滑動時將每個按鈕都帶入滾動視圖框架。 –