jsdw_ios/QuickLocation/Section/Mine/MyProfile/AvatarIconListVC.swift

56 lines
1.4 KiB
Swift

//
// AvatarIconListVC.swift
// QuickLocation
//
// Created by on 2026/6/11.
//
import UIKit
import RxSwift
import RxCocoa
class AvatarIconListVC: BaseViewController {
fileprivate var rootView: AvatarIconListView!
override func loadView() {
rootView = AvatarIconListView(frame: UIScreen.main.bounds)
view = rootView
}
private var iconIndex: String
var onSelectIcon: ((Int) -> Void)?
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
rootView.selectedIndex = iconIndex.integer
rootView.iconCollectionView.delegate = self
rootView.doneBtn.rx.tap.subscribe(onNext: { _ in
if let onSelectIcon = self.onSelectIcon {
onSelectIcon(self.rootView.selectedIndex)
AppRouter.shared.popOrDismiss()
}
}).disposed(by: disposeBag)
}
// MARK: - Init
init(iconIndex: String) {
self.iconIndex = iconIndex
super.init(nibName: nil, bundle: nil)
}
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}
extension AvatarIconListVC: UICollectionViewDelegate {
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
rootView.selectedIndex = indexPath.row + 1
}
}