এই সমাধানগুলির কোনওোটাই আমার পক্ষে কাজ করেনি। আমি সুইফট 4 এবং এক্সকোড 10.1 দিয়ে যা করেছি তা এখানে ...
ViewDidLoad () এ, সারণী গতিশীল সারি উচ্চতা ঘোষণা করুন এবং কোষগুলিতে সঠিক সীমাবদ্ধতা তৈরি করুন ...
tableView.rowHeight = UITableView.automaticDimension
ভিডিডিএলড () এও, আপনার সমস্ত টেবিলভিউ সেল নিবগুলি এই জাতীয় সারণী দর্শনতে নিবন্ধ করুন:
tableView.register(UINib(nibName: "YourTableViewCell", bundle: nil), forCellReuseIdentifier: "YourTableViewCell")
tableView.register(UINib(nibName: "YourSecondTableViewCell", bundle: nil), forCellReuseIdentifier: "YourSecondTableViewCell")
tableView.register(UINib(nibName: "YourThirdTableViewCell", bundle: nil), forCellReuseIdentifier: "YourThirdTableViewCell")
টেবিলভিউ উচ্চতার জন্যরোআআউটে, সূচকপথ.রোতে প্রতিটি কক্ষের উচ্চতার সমান উচ্চতা ফেরান ...
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
if indexPath.row == 0 {
let cell = Bundle.main.loadNibNamed("YourTableViewCell", owner: self, options: nil)?.first as! YourTableViewCell
return cell.layer.frame.height
} else if indexPath.row == 1 {
let cell = Bundle.main.loadNibNamed("YourSecondTableViewCell", owner: self, options: nil)?.first as! YourSecondTableViewCell
return cell.layer.frame.height
} else {
let cell = Bundle.main.loadNibNamed("YourThirdTableViewCell", owner: self, options: nil)?.first as! YourThirdTableViewCell
return cell.layer.frame.height
}
}
এখন টেবিলের প্রতিটি কক্ষের জন্য আনুমানিক সারির উচ্চতা দিনভিউরোরআউএটি অনুমান করুন। যথাযথ আপনি পারেন হিসাবে ...
func tableView(_ tableView: UITableView, estimatedHeightForRowAt indexPath: IndexPath) -> CGFloat {
if indexPath.row == 0 {
return 400 // or whatever YourTableViewCell's height is
} else if indexPath.row == 1 {
return 231 // or whatever YourSecondTableViewCell's height is
} else {
return 216 // or whatever YourThirdTableViewCell's height is
}
}
এটি কাজ করা উচিত ...
টেবিলভিউ.রেলোডডাটা () কে কল করার সময় আমার কন্টেন্ট অফসেট সংরক্ষণ এবং সেট করার দরকার নেই)
reloadRowsAtIndexPaths
। তবে (২) "ঝাঁপিয়ে পড়া" বলতে কী বোঝায় এবং (3) আপনি একটি আনুমানিক সারির উচ্চতা নির্ধারণ করেছেন? (কেবলমাত্র কোনও আরও ভাল সমাধান রয়েছে যা আপনাকে টেবিলটি গতিশীলভাবে আপডেট করার অনুমতি দেয় কিনা তা সন্ধান করার চেষ্টা করছেন))