2016-10-18 7 views
0

お気に入りの動画リストを表示するためのテーブルビューがあります。テーブルビューで利用可能なデータがない場合は、これを表示します。 enter image description here目的のcのTableViewで利用可能なデータがない場合、どのようにプレーンな画像またはプレーンテキストを表示しますか?

+0

識別子で新しいセルを取り出し、上記のように設計します。配列が空の場合、numberofrowsinsectionに1を返し、このセルをロードしてください。 –

+0

上記のようなビューを作成し、そのビューを隠して表示するには、 'tableView numberOfRowsInSection'に条件を入れてください.'if(arr_data.count == 0){no_data_view.hidden = NO; tbl_view.hidden = YES; } else {no_data_view.hidden = YES; tbl_view.hidden = NO} ' –

+0

@BhavinRamani彼のセルの高さが30のようなものですが、上記の設計通りです.30より大きいので、heightforrowatindexpathメソッドも設定する必要があります。だから、カスタム高さで新しいセルを取ってロードする方が良い –

答えて

0

具体的には、同じ構造を持つtableViewのセルを作成し、データが存在するかどうかに基づいて作成されたセルを処理する必要があります。データが存在しない場合は、別のセルをインスタンス化する必要があります。データが存在する場合は、別のセルをインスタンス化する必要があります。

ここで私は代わりにそれを行うでしょう: 最初にtableViewをhiddenに設定することができます。また、必要なimageViewとラベルを持つビューを作成し、それを隠すように設定します。このビューをセルではなく外側にします。データを取得する際、レスポンスに応じてビューの1つを再表示することができます。

0

次のコードを試してください。

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{ 
    if (arr.count==0) { 
     return 1; 
    } 
    return arr.count; 
} 

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    NSString *emptyMessageCellIdenifier = @"emptyMessageCell"; 
    NSString *datacellIdentifier = @"datacell"; 

    UITableViewCell *emptyMessageCell ; 
    UITableViewCell *datacell ; 


    if (arr.count == 0) { 
     return emptycell; 
    } 
    else{ 
     return datacell; 
    } 
    } 
0

私は解決策を得ました。これは簡単です。私はuiviewを取る。リストが空の場合は、テーブルビューを非表示にして、そのビューを表示します。それは本当に簡単です。

関連する問題