Просмотр исходного кода

1.修改Apex Drivers,增加下拉刷新。

Pen Li 7 лет назад
Родитель
Сommit
08ac90a0eb

+ 13 - 0
ApexDrivers/app/src/main/java/com/usai/redant/apexdrivers/Detail/DetailActivity.java

@@ -10,6 +10,7 @@ import android.os.Handler;
 import android.os.Message;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
+import android.support.v4.widget.SwipeRefreshLayout;
 import android.support.v7.app.AlertDialog;
 import android.support.v7.app.AppCompatActivity;
 import android.os.Bundle;
@@ -71,6 +72,7 @@ public class DetailActivity extends AppCompatActivity implements DetailAdapter.D
     private Context mCtx = this;
     private DetailActivity self = this;
     private ExpandableListView mListView;
+    private SwipeRefreshLayout mRefresh;
     private DetailAdapter mAdapter;
     private ArrayList<DetailSectionModel> mSectionArray = new ArrayList<>();
     private JSONObject mJson;
@@ -99,6 +101,13 @@ public class DetailActivity extends AppCompatActivity implements DetailAdapter.D
         mListView.setDividerHeight(RAUtil.dp2px(mCtx,1));
         mListView.setGroupIndicator(null);
 
+        mRefresh = findViewById(R.id.detail_refresh);
+        mRefresh.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
+            @Override
+            public void onRefresh() {
+                loadData();
+            }
+        });
 
         loadData();
     }
@@ -243,6 +252,10 @@ public class DetailActivity extends AppCompatActivity implements DetailAdapter.D
             switch (msg.what) {
                 case DetailActionReloadData: {
 
+                    if (activity.mRefresh.isRefreshing()) {
+                        activity.mRefresh.setRefreshing(false);
+                    }
+
                     JSONObject json = (JSONObject) msg.obj;
 
                     if (json != null) {

+ 13 - 0
ApexDrivers/app/src/main/java/com/usai/redant/apexdrivers/Home/HomeFragment.java

@@ -9,6 +9,7 @@ import android.os.Message;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import android.support.v4.app.Fragment;
+import android.support.v4.widget.SwipeRefreshLayout;
 import android.support.v7.app.AlertDialog;
 import android.view.LayoutInflater;
 import android.view.View;
@@ -37,6 +38,7 @@ public class HomeFragment extends Fragment {
     private Context mCtx;
     private HomeFragment self = this;
     private ExpandableListView mListView;
+    private SwipeRefreshLayout mRefresh;
     private HomeListAdapter mAdapter;
     private ArrayList<HomeSectionModel> mSectionArray = new ArrayList<>();
     private HomeHandler mHandler = new HomeHandler(this);
@@ -82,6 +84,14 @@ public class HomeFragment extends Fragment {
             }
         });
 
+        mRefresh = view.findViewById(R.id.home_refresh);
+        mRefresh.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
+            @Override
+            public void onRefresh() {
+                loadData();
+            }
+        });
+
 
         loadData();
     }
@@ -232,6 +242,9 @@ public class HomeFragment extends Fragment {
             switch (msg.what) {
                 case HomeActionReloadData: {
 
+                    if (fragment.mRefresh.isRefreshing()) {
+                        fragment.mRefresh.setRefreshing(false);
+                    }
                     /**
                      * 手动调用打开/关闭 Group,否则默认关闭
                      * */

+ 13 - 1
ApexDrivers/app/src/main/java/com/usai/redant/apexdrivers/Update/UpdateActivity.java

@@ -14,6 +14,7 @@ import android.os.Environment;
 import android.os.Handler;
 import android.os.Message;
 import android.provider.MediaStore;
+import android.support.v4.widget.SwipeRefreshLayout;
 import android.support.v7.app.AppCompatActivity;
 import android.os.Bundle;
 import android.util.Log;
@@ -83,6 +84,7 @@ public class UpdateActivity extends AppCompatActivity implements UpdateAdapter.U
     private UpdateAdapter mAdapter;
 
     private ExpandableListView mListView;
+    private SwipeRefreshLayout mRefresh;
 
     private UpdateInputModel mInputModel;
     private UpdatePhotoModel mPhotoModel;
@@ -117,6 +119,14 @@ public class UpdateActivity extends AppCompatActivity implements UpdateAdapter.U
         mListView.setGroupIndicator(null);
         mListView.setAdapter(mAdapter);
 
+        mRefresh = findViewById(R.id.update_refresh);
+        mRefresh.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
+            @Override
+            public void onRefresh() {
+                loadData();
+            }
+        });
+
         loadData();
     }
 
@@ -603,7 +613,9 @@ public class UpdateActivity extends AppCompatActivity implements UpdateAdapter.U
 
             switch (msg.what) {
                 case UpdateActionReloadData: {
-
+                    if (activity.mRefresh.isRefreshing()) {
+                        activity.mRefresh.setRefreshing(false);
+                    }
                     JSONObject json = (JSONObject) msg.obj;
                     if (json != null) {
 

+ 11 - 4
ApexDrivers/app/src/main/res/layout/activity_detail.xml

@@ -7,10 +7,17 @@
     android:layout_height="match_parent"
     tools:context=".Detail.DetailActivity">
 
-    <ExpandableListView
-        android:id="@+id/detail_list_view"
+    <android.support.v4.widget.SwipeRefreshLayout
+        android:id="@+id/detail_refresh"
         android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        />
+        android:layout_height="match_parent">
+
+        <ExpandableListView
+            android:id="@+id/detail_list_view"
+            android:layout_width="match_parent"
+            android:layout_height="match_parent"
+            />
+
+    </android.support.v4.widget.SwipeRefreshLayout>
 
 </android.support.constraint.ConstraintLayout>

+ 11 - 3
ApexDrivers/app/src/main/res/layout/activity_update.xml

@@ -7,10 +7,18 @@
     android:layout_height="match_parent"
     tools:context=".Update.UpdateActivity">
 
-    <ExpandableListView
-        android:id="@+id/update_list_view"
+    <android.support.v4.widget.SwipeRefreshLayout
+        android:id="@+id/update_refresh"
         android:layout_width="match_parent"
         android:layout_height="match_parent"
-        />
+        >
+
+        <ExpandableListView
+            android:id="@+id/update_list_view"
+            android:layout_width="match_parent"
+            android:layout_height="match_parent"
+            />
+
+    </android.support.v4.widget.SwipeRefreshLayout>
 
 </android.support.constraint.ConstraintLayout>

+ 12 - 4
ApexDrivers/app/src/main/res/layout/fragment_home.xml

@@ -5,13 +5,21 @@
     android:layout_height="match_parent"
     >
 
-    <ExpandableListView
-        android:id="@+id/home_list_view"
+    <android.support.v4.widget.SwipeRefreshLayout
+        android:id="@+id/home_refresh"
         android:layout_width="match_parent"
         android:layout_height="match_parent"
-        android:groupIndicator="@null"
         >
 
-    </ExpandableListView>
+        <ExpandableListView
+            android:id="@+id/home_list_view"
+            android:layout_width="match_parent"
+            android:layout_height="match_parent"
+            android:groupIndicator="@null"
+            >
+
+        </ExpandableListView>
+
+    </android.support.v4.widget.SwipeRefreshLayout>
 
 </android.support.constraint.ConstraintLayout>