2017-10-18 17 views
0

は、私は、次の構造を有する:ListViewに項目がない場合にボタンを表示するにはどうすればいいですか?

<ScrollView tkMainContent> 
    <ListView [items]="students$ | async" class="list-group" *ngIf="students$"> 
    <ng-template let-student="item"> 
     <StackLayout>Student details go here</StackLayout> 

は、私は私のリストには、学生がない場合ScrollView内のボタンを表示することができませんよ。

どうすればボタンを表示できますか?

注:実際のiOSデバイスでテストしています。

+0

なぜ、空のときにScrollViewの上にボタンを表示しないのですか? –

+0

あなたは成功なしに提案したものを含むすべての可能な解決策を試してみてください!あなたのために働くコードを書くことができますか? – Mutaz

+0

私は実際には今日の個人的なプロジェクトのためにそれを必要としています。私はそれを持ってすぐに私はここに答えを投稿します。私もあなたを助けることができる解決策を見つけることを願っています。 –

答えて

3
<FlexboxLayout flexDirection="column"> 
       <GridLayout class="page-content" id="placeholderLayout" visibility="{{ hasContent ? 'collapse' : 'visible' }}"> 
        <Label class="page-icon fa" text="&#xf030;"></Label> 
        <Label class="page-placeholder" style="white-space: normal" text="Click the camera button to add image"></Label> 
       </GridLayout> 
       <ScrollView> 
        <-- List View Here --> 
       </ScrollView> 
      </FlexboxLayout> 

プレースホルダのコンテンツを表示するために、NS Coreでこれを使用します。可視性を設定する方法は角度によって異なる場合がありますが、同様のマークアップが効果的です。

component.tsでは、リストビューに表示するコンテンツがあるかどうかを評価し、存在する場合はhasContentをtrueに設定し、そうでない場合はfalseを評価する必要があります。

希望するもの:これを実装する際に問題が発生した場合はお知らせください。

+0

ありがとうShiva。あなたの答えは素晴らしかったです。私はうまくいきました 'FlexLayout'で' GirdLayout'を置き換えるように更新しました。 – Mutaz

+0

ええ、私のコードサンプルでGridLayoutの代わりにあなたのレイアウトを使用することができます。 :) –

関連する問題