[解決済み] テーブルビューの結果がない場合、画面に「No Results」と表示される
質問
私は
tableview
で、リストアップする結果がない場合があります。
は、"no results"と表示されるものを設置したいと思います。
と表示したいのですが。
これを行うための最も簡単な方法はありますか?
私なら
label
の後ろに
tableview
の後ろに配置し、その結果に基づいてどちらかを隠すのですが、私が扱っているのは
TableViewController
であり、通常の
ViewController
というのは、スマートというか、やりやすいというか。
また、私は
Parse
としてサブクラス化し
PFQueryTableViewController
:
@interface TableViewController : PFQueryTableViewController
必要な追加情報を提供することができますので、お知らせください。
TableViewController
ストーリーボードのシーン。
EDITです。 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;
}
そして、これが私が取得したViewですが、まだセパレータラインがあります。 これは何か小さな変更であるような気がしますが、なぜセパレータラインが表示されるのかがよくわかりません。
どのように解決するのですか?
を使えば、簡単に実現できます。
backgroundView
プロパティに
UITableView
.
Objective Cです。
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
NSInteger numOfSections = 0;
if (youHaveData)
{
yourTableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine;
numOfSections = 1;
yourTableView.backgroundView = nil;
}
else
{
UILabel *noDataLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, yourTableView.bounds.size.width, yourTableView.bounds.size.height)];
noDataLabel.text = @"No data available";
noDataLabel.textColor = [UIColor blackColor];
noDataLabel.textAlignment = NSTextAlignmentCenter;
yourTableView.backgroundView = noDataLabel;
yourTableView.separatorStyle = UITableViewCellSeparatorStyleNone;
}
return numOfSections;
}
Swiftです。
func numberOfSections(in tableView: UITableView) -> Int
{
var numOfSections: Int = 0
if youHaveData
{
tableView.separatorStyle = .singleLine
numOfSections = 1
tableView.backgroundView = nil
}
else
{
let noDataLabel: UILabel = UILabel(frame: CGRect(x: 0, y: 0, width: tableView.bounds.size.width, height: tableView.bounds.size.height))
noDataLabel.text = "No data available"
noDataLabel.textColor = UIColor.black
noDataLabel.textAlignment = .center
tableView.backgroundView = noDataLabel
tableView.separatorStyle = .none
}
return numOfSections
}
backgroundView
プロパティテーブルビューの背景画像。
宣言文
スウィフト
var backgroundView: UIView?
Objective-C
@property(nonatomic, readwrite, retain) UIView *backgroundView
ディスカッション
テーブルビューの背景ビューは、テーブルビューのサイズに合わせて自動的にリサイズされます。 サイズに変更されます。このビューは、テーブルビューのサブビューとして、すべてのセルの背後に配置されます。 ビューのサブビューとして配置されます。
テーブルビューの背景色を設定するには、このプロパティをnilに設定する必要があります。 テーブル・ビューの背景色を設定するには、このプロパティをnilに設定する必要があります。
関連
-
libc++abi.dylib が NSException 型の捕捉できない例外で終了する理由 エラー
-
iOS classic error Undefined symbols for architecture XXX:
-
制御が非ボイド関数の終了に達する
-
[解決済み] Xcodeにおけるバージョンとビルドの比較
-
[解決済み] フレームワークを使用したiOSアプリがデバイス上でクラッシュ、dyld: ライブラリがロードされない、Xcode 6 Beta
-
[解決済み] UITextFieldのテキスト変更イベント
-
[解決済み] iPhone 5の画面解像度に対応したアプリを開発・移行するには?
-
[解決済み] NSNotificationCenterのaddObserver in Swift
-
[解決済み] UITableView - トップにスクロールする
-
[解決済み] Cocoapods警告 - CocoaPodsがプロジェクトの基本構成を設定しなかった理由は、プロジェクトに既にカスタム構成が設定されているためです。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
libc++abi.dylib が NSException 型の捕捉できない例外で終了する理由 エラー
-
[解決済み] Xcode 7のエラーです。"Missing iOS Distribution signing identity for ..." (iOS配布用署名IDがありません)
-
[解決済み] Objective-Cで文字列が空かどうかをテストするにはどうすればよいですか?
-
[解決済み] UITextFieldのテキスト変更イベント
-
[解決済み] iOS Simulatorでネットワークを無効にすることは可能ですか?
-
[解決済み] iOS - UITextFieldの外側をタッチするとキーボードが外れる。
-
[解決済み] SwiftでURLから画像を読み込む/ダウンロードする
-
[解決済み] iPadマルチタスクのサポートには、これらの方向が必要です。
-
[解決済み] ぼかしの入ったオーバーレイビューの作成
-
[解決済み] 空のUITableViewを処理する。フレンドリーなメッセージを表示する