私はAPIからのアドレスを持って、正しく表示されなかった場合は、下記スウィフト3のテーブルビューセルでスーパービューからラベルを取り除くときにラベルを再び取り戻すには?
が、ここに示したようにただ一つのラベルを示す利用可能なアドレスが存在しないときに、画面からラベルを削除するには、コードremove from superView
を使用していましたそして
以下のようにそれ自体がそれに入射したコードが画像に表示されているが、適切な画像は、名前ラベル、アドレスラベルと携帯電話番号で表示されるべきですラベル誰も私のアドレスラベルと携帯電話のラベルを表示する方法を助けることができます表示から削除した後のアドレスは、APIからですか?それはラベルとラベルを隠すなど、セルの高さを動的にするには0を一定の高さを変更するために、ここで
は、高さの制約を設定して自分のコードfunc tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
if (indexPath.section == 0) {
let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as! AddressTableViewCell
let dict = guestShippingAddressModel
self.tableDetails.isHidden = false
self.activityIndicator.stopAnimating()
self.activityIndicator.hidesWhenStopped = true
cell.deleteButton.tag = indexPath.row
if self.street?.isEmpty == true || self.street?.isEmpty == nil {
cell.addressLabel.isHidden = true
cell.mobileNumberLabel.isHidden = true
cell.radioButton.isHidden = true
cell.editButton.isHidden = true
cell.deleteButton.isHidden = true
cell.addresslabel.removeFromSuperview()
cell.mobileNumberlabel.removeFromSuperview()
cell.nameLabel.text = "No address available"
if delayCheck == true {
let when = DispatchTime.now() + 5 // change 2 to desired number of seconds
DispatchQueue.main.asyncAfter(deadline: when) {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let addtoCartVC = storyboard.instantiateViewController(withIdentifier: "newAddress") as! NewAddressViewController
self.navigationController?.pushViewController(addtoCartVC, animated: true)
}
}
}
else {
cell.addressLabel.isHidden = false
cell.radioButton.isHidden = false
cell.editButton.isHidden = false
cell.deleteButton.isHidden = false
cell.nameLabel.isHidden = false
cell.nameLabel.text = "\((dict?.firstName)!) \((dict?.lastName)!)"
cell.addressLabel.text = "\((self.street)!) \((dict?.city)!) \((dict?.region)!) \((dict?.postCode)!)"
cell.mobileNumberLabel.text = "\((dict?.telephone)!)"
}
cell.radioButton.tag = indexPath.row
cell.editButton.tag = indexPath.row
cell.deleteButton.tag = indexPath.row
cell.editButton.isHidden = true
cell.deleteButton.isHidden = true
cell.radioButton.addTarget(self, action: #selector(selectRadioButton(_:)), for: .touchUpInside)
cell.deleteButton.addTarget(self, action: #selector(deleteAction(button:)), for: .touchUpInside)
cell.editButton.addTarget(self, action: #selector(editButtonAction(_:)), for: .touchUpInside)
let checkIndex = self.checkIsRadioSelect.index(of: indexPath.row)
if(checkIndex != nil) {
cell.radioButton.isSelected = true
cell.editButton.isHidden = false
cell.deleteButton.isHidden = false
}
else
{
cell.radioButton.isSelected = false
cell.editButton.isHidden = true
cell.deleteButton.isHidden = true
}
if (checkIsPaymentRadioSelect == true) {
let defaultvalue = street
if defaultvalue?.isEmpty == false {
cell.radioButton.isSelected = true
cell.editButton.isHidden = false
cell.deleteButton.isHidden = false
addressSelected = true
}
}
return cell
}
AddressTableViewCellデザインのUIを表示してください。 –
ここに私のUIデザインですhttps://i.stack.imgur.com/yX4Oh.png @NishantBhindi – user0246
ここに私の元のイメージはアドレスデータhttps://i.stackと見えます。imgur.com/SOoLK.png – user0246