LoginSignup
12
11

More than 5 years have passed since last update.

SwipeRefreshLayoutの中にListViewを入れる際のEmpty View

Posted at

問題

リストビューをswipe to refreshさせたい場合、empty viewをこうやって書いてたんだけどうまく表示されなかった

<android.support.v4.widget.SwipeRefreshLayout ...>
  <ListView
    android:id="@android:id/list" ... />
  <TextView
    android:id="@android:id/empty" ...
    android:text="@string/empty_list"/>
</android.support.v4.widget.SwipeRefreshLayout>

解決策

Empty ViewをSwipeRefreshLayoutと同じレベルに置けばいい

<android.support.v4.widget.SwipeRefreshLayout ...>
  <ListView
    android:id="@android:id/list" ... />
</android.support.v4.widget.SwipeRefreshLayout>

<TextView
  android:id="@android:id/empty" ...
  android:text="@string/empty_list"/>

あとはプログラムでempty viewをセットしてあげる

listView.setEmptyView(findViewById(android.R.id.empty));

一個だけ問題が...

それは、empty viewが表示されてる状態ではswipe to refreshできないということ
もう一個SwipeRefreshLayoutを作ってTextViewを入れ子にすればいいのかな?(要検証)

12
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
11