要在导航栏中创建一个带有UIActivityIndicator的按钮,可以使用以下步骤:
以下是一个简单的示例代码:
import UIKit
class ViewController: UIViewController {
let activityIndicatorView = UIActivityIndicatorView(style: .gray)
let button = UIButton(type: .system)
override func viewDidLoad() {
super.viewDidLoad()
// 创建UIButton
button.frame = CGRect(x: 0, y: 0, width: 50, height: 30)
button.setTitle("按钮", for: .normal)
button.addTarget(self, action: #selector(buttonClicked), for: .touchUpInside)
// 创建UIActivityIndicatorView
activityIndicatorView.frame = CGRect(x: 0, y: 0, width: 20, height: 20)
activityIndicatorView.center = CGPoint(x: button.bounds.width/2, y: button.bounds.height/2)
button.addSubview(activityIndicatorView)
// 添加UIButton到导航栏
let barButton = UIBarButtonItem(customView: button)
self.navigationItem.rightBarButtonItem = barButton
}
@objc func buttonClicked() {
// 控制UIActivityIndicatorView的显示和隐藏
if activityIndicatorView.isAnimating {
activityIndicatorView.stopAnimating()
} else {
activityIndicatorView.startAnimating()
}
}
}
在这个示例中,我们首先创建了一个UIButton,并设置了其样式和标题。然后,我们创建了一个UIActivityIndicatorView,并将其添加到按钮上。最后,我们添加了一个点击事件,用于控制UIActivityIndicatorView的显示和隐藏。
需要注意的是,在使用UIActivityIndicatorView时,需要在合适的时机停止它的动画,否则它将一直显示。
领取专属 10元无门槛券
手把手带您无忧上云