Я Rx-Swift
новичок. Я пытаюсь получить действие UIButton
, которое присутствует внутри UITableViewCell
.
Попытка:
- Я пытался с
UITableViewCell's
экземпляром, который яможно получить от UIViewController
. Это нормально работает.
Необходимость:
- Как перенести значение кликаемого тега с
awakeFromNib()
на UIViewController
?
Код:
// UITableViewCell
class TripInfoCell: UITableViewCell {
@IBOutlet weak var btnMore: UIButton!
var cellbag = DisposeBag()
override func prepareForReuse() {
super.prepareForReuse()
cellbag = DisposeBag()
}
override func awakeFromNib() {
super.awakeFromNib()
btnMore.rx.tap.asObservable()
.subscribe { _ in
print("Tapping_ ", self.tag)
}.disposed(by: cellbag)
}
}
// UIViewController
override func viewDidLoad() {
super.viewDidLoad()
Observable.of(visitsModel).bind(to: tblView.rx.items(cellIdentifier: "cell", cellType: TripInfoCell.self)) { (row, element, cell) in
cell.tag = row
}
.disposed(by: disposeBag)
}
Попытка:
Здесь UIButton
действие, которое я использовал внутри UIViewController
,Так что я могу передавать данные.
Observable.of(visitsModel).bind(to: tblView.rx.items(cellIdentifier: "cell", cellType: TripInfoCell.self)) { (row, element, cell) in
cell.tag = row
cell.btnMore.rx.tap.asObservable()
.subscribe { _ in
print("Inside_Tapping_ ", cell.tag)
}.disposed(by: cell.cellbag)
}