1. ホーム
  2. iphone

[解決済み] 空のUITableViewを処理する。フレンドリーなメッセージを表示する

2022-05-15 19:26:20

質問

UITableViewがあるのですが、場合によっては空でも問題ありません。そこで、アプリの背景画像を表示する代わりに アプリの背景画像を表示する代わりに、私は次のようなフレンドリーなメッセージを画面に印刷することを希望します。

このリストは現在空です

最も簡単な方法は何ですか?

どのように解決するのですか?

UITableViewのbackgroundViewプロパティが便利です。

viewDidLoad または任意の場所で reloadData でテーブルが空かどうかを判断し、UITableViewのbackgroundViewプロパティをUILabelを含むUIViewで更新するか、単にnilに設定する必要があります。 それはそれだ。

もちろん、UITableViewのデータソースに二重の義務を負わせ、特別な"list is empty"セルを返すことは可能ですが、私には、それが雑なように感じられます。 突然ですが numberOfRowsInSection:(NSInteger)section は、質問されていない他のセクションの行数を計算し、それらも空であることを確認する必要があります。 また、空のメッセージを表示する特別なセルを作る必要があります。 また、空のメッセージに対応するために、おそらくセルの高さを変更する必要があることを忘れないでください。 これはすべて可能ですが、応急処置の上に応急処置をしたようなものです。