当reloadData
被调用时,似乎UITableView
会自动重新计算其contentSize
,以便内容适合(请参阅Xcode
中的调用堆栈的屏幕截图)。我怎么阻止它?
我想让contentSize
在某些情况下大于其内容,当表格被部分遮盖时。但重新加载后,contentSize
的任何更改都会消失。
答案 0 :(得分:1)
我使用contentInset
来解决它,就像这样:
float extraSpaceAtTheBottom = 50;
self.tableView.contentInset = UIEdgeInsetsMake(0.0, 0.0, extraSpaceAtTheBottom, 0.0);
答案 1 :(得分:1)
您需要在每次“reloadData”调用后更改UITableView的contentSize,您可以这样做:
String SELECT_ALL_BY_TITLE = "SELECT * FROM " + TABLE_NAME + " WHERE " + COLUMN_TITLE + "=? ;";
public boolean ifAlreadyExists(String title) {
if (database != null && database.isOpen()) {
Cursor cursor = database.rawQuery(SELECT_ALL_BY_TITLE, new String[] { title});
if (cursor != null && cursor.getCount() > 0) {
cursor.close();
return true;
} else {
cursor.close();
return false;
}
}
Log.e(TAG, "Database not open");
return false;
}
答案 2 :(得分:0)
在tableView上设置高度的布局约束。