Эх сурвалжийг харах

Added progress bar on user books screen

Vadik Sirekanyan 7 жил өмнө
parent
commit
d0263f086f

+ 9 - 2
app/src/main/java/me/vadik/knigopis/user/UserActivity.kt

@@ -80,8 +80,15 @@ class UserActivity : AppCompatActivity() {
 
     override fun onStart() {
         super.onStart()
-        api.getUserBooks(userId)
-            .io2main()
+        api.getUserBooks(userId).io2main()
+            .doOnSubscribe {
+                userBooksProgressBar.show()
+                userBooksErrorPlaceholder.hide()
+                userBooksRecyclerView.hide()
+            }
+            .doFinally { userBooksProgressBar.hide() }
+            .doOnSuccess { userBooksRecyclerView.show() }
+            .doOnError { userBooksErrorPlaceholder.show() }
             .subscribe({
                 books.clear()
                 books.addAll(it)

+ 14 - 0
app/src/main/res/layout/user_activity.xml

@@ -65,6 +65,20 @@
         app:layout_behavior="@string/appbar_scrolling_view_behavior"
         tools:listitem="@layout/user_book" />
 
+    <ProgressBar
+        android:id="@+id/userBooksProgressBar"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_gravity="center"
+        android:layout_marginTop="56dp"
+        android:visibility="gone" />
+
+    <TextView
+        android:id="@+id/userBooksErrorPlaceholder"
+        style="@style/PlaceholderStyle"
+        android:layout_marginTop="56dp"
+        android:text="@string/error_loading_data" />
+
     <android.support.design.widget.FloatingActionButton
         android:id="@+id/fab"
         android:layout_width="wrap_content"