Skip to content

Commit d3a088f

Browse files
committed
fix refreshing bug
1 parent 3579eb7 commit d3a088f

5 files changed

Lines changed: 47 additions & 10 deletions

File tree

.idea/modules.xml

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

app/src/main/java/net/tawazz/spendee/MainActivity.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package net.tawazz.spendee;
22

3-
import android.app.ProgressDialog;
43
import android.content.Intent;
54
import android.graphics.Color;
65
import android.os.Bundle;
@@ -344,6 +343,8 @@ public void run() {
344343

345344
public void loadData() {
346345

346+
final ViewsFragment fragment = (ViewsFragment) fragmentList.get(viewPager.getCurrentItem());
347+
fragment.setRefreshing(true);
347348
String url;
348349

349350
if (dates != null) {
@@ -419,16 +420,19 @@ public void onResponse(JSONObject response) {
419420
}
420421

421422
updateViews(currentPosition);
423+
fragment.setRefreshing(false);
422424

423425
} catch (JSONException e) {
424426
updateViews(currentPosition);
427+
fragment.setRefreshing(false);
425428
}
426429

427430

428431
}
429432
}, new Response.ErrorListener() {
430433
@Override
431434
public void onErrorResponse(VolleyError error) {
435+
fragment.setRefreshing(false);
432436
updateViews(currentPosition);
433437
}
434438
});

app/src/main/java/net/tawazz/spendee/fragments/ExpFragment.java

Lines changed: 23 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33

44
import android.os.Bundle;
5+
import android.os.Handler;
56
import android.support.v4.widget.SwipeRefreshLayout;
67
import android.support.v7.widget.LinearLayoutManager;
78
import android.support.v7.widget.RecyclerView;
@@ -46,9 +47,16 @@ public View onCreateView(LayoutInflater inflater, ViewGroup container,
4647

4748
if (onCreateViewCallback != null) {
4849
this.onCreateViewCallback.onFragmentCreateView();
49-
refreshLayout.setRefreshing(true);
50-
this.onCreateViewCallback.onRefresh();
51-
refreshLayout.setRefreshing(true);
50+
Handler handler = new Handler();
51+
handler.post(new Runnable() {
52+
@Override
53+
public void run() {
54+
refreshLayout.setRefreshing(true);
55+
onCreateViewCallback.onRefresh();
56+
refreshLayout.setRefreshing(false);
57+
}
58+
});
59+
5260
}
5361

5462
return view;
@@ -89,10 +97,18 @@ public void setExpenses(ArrayList<ExpData> expenses) {
8997

9098
}
9199

92-
public void refresh(){
93-
refreshLayout.setRefreshing(true);
94-
onCreateViewCallback.onRefresh();
95-
refreshLayout.setRefreshing(false);
100+
@Override
101+
public void setRefreshing(final boolean isRefreshing) {
102+
Handler handler = new Handler();
103+
104+
handler.post(new Runnable() {
105+
@Override
106+
public void run() {
107+
refreshLayout.setRefreshing(isRefreshing);
108+
}
109+
});
110+
96111
}
97112

113+
98114
}

app/src/main/java/net/tawazz/spendee/fragments/IncFragment.java

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,14 @@
22

33

44
import android.os.Bundle;
5+
import android.os.Handler;
56
import android.support.v4.app.Fragment;
67
import android.support.v4.widget.SwipeRefreshLayout;
78
import android.support.v7.widget.LinearLayoutManager;
89
import android.support.v7.widget.RecyclerView;
910
import android.view.LayoutInflater;
1011
import android.view.View;
1112
import android.view.ViewGroup;
12-
import android.view.animation.BounceInterpolator;
13-
import android.view.animation.OvershootInterpolator;
1413
import android.widget.TextView;
1514

1615
import net.tawazz.spendee.AppData.IncData;
@@ -90,4 +89,17 @@ public void setIncomes(ArrayList<IncData> incomes) {
9089
listView.setLayoutManager(new LinearLayoutManager(this.getContext()));
9190
}
9291
}
92+
93+
@Override
94+
public void setRefreshing(final boolean isRefreshing) {
95+
Handler handler = new Handler();
96+
97+
handler.post(new Runnable() {
98+
@Override
99+
public void run() {
100+
refreshLayout.setRefreshing(isRefreshing);
101+
}
102+
});
103+
104+
}
93105
}

app/src/main/java/net/tawazz/spendee/fragments/ViewsFragment.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,4 +25,8 @@ public interface onCreateViewListener {
2525

2626
void onRefresh();
2727
}
28+
29+
public void setRefreshing(final boolean isRefreshing){
30+
31+
}
2832
}

0 commit comments

Comments
 (0)