Add empty state for Data List

feature/top10
Aurelien Hubert 7 years ago
parent baf698b76e
commit c7e3ef1998
  1. 11
      app/src/main/java/net/pokeranalytics/android/ui/fragment/DataListFragment.kt
  2. 19
      app/src/main/res/layout/fragment_data_list.xml
  3. 2
      app/src/main/res/layout/row_header_title.xml
  4. 16
      app/src/main/res/values/styles.xml

@ -4,6 +4,7 @@ import android.os.Bundle
import android.view.LayoutInflater import android.view.LayoutInflater
import android.view.View import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
import androidx.core.view.isVisible
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import io.realm.Realm import io.realm.Realm
import io.realm.RealmResults import io.realm.RealmResults
@ -43,6 +44,7 @@ class DataListFragment : PokerAnalyticsFragment(), LiveRowRepresentableDataSourc
override fun onResume() { override fun onResume() {
super.onResume() super.onResume()
this.recyclerView?.adapter?.notifyDataSetChanged() this.recyclerView?.adapter?.notifyDataSetChanged()
noDataFound.isVisible = items.isEmpty()
} }
override fun rowRepresentableForPosition(position: Int): RowRepresentable? { override fun rowRepresentableForPosition(position: Int): RowRepresentable? {
@ -119,14 +121,7 @@ class DataListFragment : PokerAnalyticsFragment(), LiveRowRepresentableDataSourc
this.dataType.relatedResultsRepresentable?.let { this.dataType.relatedResultsRepresentable?.let {
this.items = it.items(realm) this.items = it.items(realm)
/* noDataFound.isVisible = this.items.isEmpty()
this.items.addChangeListener { newItems ->
Timber.d("addChangeListener: $newItems")
Timber.d("addChangeListener: ${this.recyclerView}")
Timber.d("addChangeListener: ${this}")
this.recyclerView?.adapter?.notifyDataSetChanged()
}
*/
} }
} }
} }

@ -28,6 +28,25 @@
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/noDataFound"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="8dp"
android:layout_marginBottom="8dp"
style="@style/PokerAnalyticsTheme.TextView.Header"
android:textSize="24sp"
android:text="@string/no_data_found"
android:visibility="gone"
tools:visibility="visible"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.3" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
</androidx.core.widget.NestedScrollView> </androidx.core.widget.NestedScrollView>

@ -7,7 +7,7 @@
<androidx.appcompat.widget.AppCompatTextView <androidx.appcompat.widget.AppCompatTextView
android:id="@+id/title" android:id="@+id/title"
style="@style/PokerAnalyticsTheme.TextView.SessionHeader" style="@style/PokerAnalyticsTheme.TextView.Header"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="16dp" android:layout_marginStart="16dp"

@ -79,10 +79,11 @@
</style> </style>
<style name="PokerAnalyticsTheme.TextView.Header"> <style name="PokerAnalyticsTheme.TextView.Header">
<item name="android:textSize">22sp</item> <item name="android:textColor">@color/kaki_medium</item>
<item name="android:textColor">@color/gray_darker</item> <item name="android:maxLines">1</item>
<item name="android:fontFamily">@font/roboto_bold</item> <item name="android:ellipsize">end</item>
<item name="android:paddingTop">8dp</item> <item name="android:fontFamily">@font/roboto_medium</item>
<item name="android:textSize">16sp</item>
</style> </style>
<style name="PokerAnalyticsTheme.TextView.RowTitle"> <style name="PokerAnalyticsTheme.TextView.RowTitle">
@ -126,13 +127,6 @@
</style> </style>
<!-- Session Row --> <!-- Session Row -->
<style name="PokerAnalyticsTheme.TextView.SessionHeader">
<item name="android:textColor">@color/kaki_medium</item>
<item name="android:maxLines">1</item>
<item name="android:ellipsize">end</item>
<item name="android:fontFamily">@font/roboto_medium</item>
<item name="android:textSize">16sp</item>
</style>
<style name="PokerAnalyticsTheme.TextView.SessionRow"> <style name="PokerAnalyticsTheme.TextView.SessionRow">
<item name="android:textColor">@color/white</item> <item name="android:textColor">@color/white</item>

Loading…
Cancel
Save