ฉันมีtableview
ที่ซึ่งบางครั้งอาจไม่มีผลลัพธ์ใด ๆ ให้แสดงดังนั้นฉันจึงต้องการใส่บางสิ่งที่ระบุว่า "ไม่มีผลลัพธ์"หากไม่มีผลลัพธ์ (ไม่ว่าจะเป็นป้ายกำกับหรือเซลล์มุมมองตารางเดียว)
มีวิธีที่ง่ายที่สุดในการดำเนินการนี้หรือไม่?
ฉันจะลองlabel
อยู่เบื้องหลังtableview
แล้วซ่อนหนึ่งในสองบนพื้นฐานของผล แต่เนื่องจากผมทำงานด้วยTableViewController
และไม่ปกติViewController
ผมไม่แน่ใจว่าวิธีการที่สมาร์ทหรือที่เป็นไปได้
ฉันยังใช้Parse
และคลาสย่อยเป็นPFQueryTableViewController
:
@interface TableViewController : PFQueryTableViewController
ฉันสามารถให้รายละเอียดเพิ่มเติมที่จำเป็นเพียงแจ้งให้เราทราบ!
TableViewController
ฉากในสตอรี่บอร์ด:
แก้ไข: สำหรับ Midhun MP นี่คือรหัสที่ฉันใช้
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
NSInteger numOfSections = 0;
if ([self.stringArray count] > 0)
{
self.tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine;
numOfSections = 1;
//yourTableView.backgroundView = nil;
self.tableView.backgroundView = nil;
}
else
{
UILabel *noDataLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, self.tableView.bounds.size.width, self.tableView.bounds.size.height)];
noDataLabel.text = @"No data available";
noDataLabel.textColor = [UIColor blackColor];
noDataLabel.textAlignment = NSTextAlignmentCenter;
//yourTableView.backgroundView = noDataLabel;
//yourTableView.separatorStyle = UITableViewCellSeparatorStyleNone;
self.tableView.backgroundView = noDataLabel;
self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
}
return numOfSections;
}
และนี่คือมุมมองที่ฉันได้รับมันยังมีเส้นคั่น ฉันรู้สึกว่านี่เป็นการเปลี่ยนแปลงเล็กน้อย แต่ฉันไม่แน่ใจว่าทำไมเส้นคั่นจึงปรากฏขึ้น?
numberOfSections
ควรส่งคืนการนับและนั่นคือมัน เหมือนกันสำหรับnumberOfRowsInSection
. เหล่านี้สามารถเรียกได้หลายครั้งเมื่อใดก็ได้ อย่าอัปเดตมุมมองหรืออัปเดตข้อมูลหรือทำสิ่งใด ๆ ยกเว้นส่งคืนการนับ ตรรกะสำหรับการอัปเดตมุมมองต้องไม่อยู่ในวิธีการเหล่านี้