Skip to content

Commit a64159d

Browse files
committed
android and ios API unification
1 parent 5fd8bb6 commit a64159d

6 files changed

+34
-41
lines changed

README.md

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
# NativeScript-PullToRefresh :recycle:
22
NativeScript plugin to use Pull to Refresh on any view.
33

4-
**Android Only - PRs welcome for iOS**.
5-
64
#### [Android SwipeRefreshLayout](http://developer.android.com/reference/android/support/v4/widget/SwipeRefreshLayout.html)
75
##### [Material Design Indicators Spec](https://www.google.com/design/spec/components/progress-activity.html#progress-activity-types-of-indicators)
86

@@ -44,14 +42,14 @@ function refreshList(args) {
4442
// Get reference to the PullToRefresh;
4543
var pullRefresh = args.object;
4644

47-
// Do work here... and when done call .setRefreshing(false) to stop the refreshing
45+
// Do work here... and when done call set refreshing property to false to stop the refreshing
4846
loadItems().then(function (resp) {
4947
// ONLY USING A TIMEOUT TO SIMULATE/SHOW OFF THE REFRESHING
5048
setTimeout(function () {
51-
pullRefresh.setRefreshing(false);
49+
pullRefresh.refreshing = false;
5250
}, 1000);
5351
}, function (err) {
54-
pullRefresh.setRefreshing(false);
52+
pullRefresh.refreshing = false;
5553
});
5654
}
5755
exports.refreshList = refreshList;
@@ -63,6 +61,6 @@ exports.refreshList = refreshList;
6361

6462
## API
6563

66-
### setRefreshing
64+
### refreshing
6765

68-
Notifies the widget that the refresh state has changed.
66+
Property. Notifies the widget that the refresh state has changed.

demo/app/main-page.js

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ var app = require("application");
22
var Observable = require("data/observable").Observable;
33
var ObservableArray = require("data/observable-array").ObservableArray;
44
var platformModule = require("platform");
5-
var color = require("color");
6-
5+
var color = require("color");
6+
77
var users = [
88
{ name: 'Billy Bob' },
99
{ name: 'Tweeder' },
@@ -16,21 +16,21 @@ var users = [
1616
];
1717
var viewModel = new Observable({
1818
users: new ObservableArray(users)
19-
});
20-
21-
function pageLoaded(args) {
22-
var page = args.object;
19+
});
20+
21+
function pageLoaded(args) {
22+
var page = args.object;
2323
// Change statusbar color on Lollipop
24-
24+
2525
if (app.android && platformModule.device.sdkVersion >= "21") {
2626
var window = app.android.startActivity.getWindow();
2727
window.setStatusBarColor(new color.Color("#1976D2").android);
28-
}
29-
page.bindingContext = viewModel;
30-
loadItems();
31-
}
32-
exports.pageLoaded = pageLoaded;
33-
28+
}
29+
page.bindingContext = viewModel;
30+
loadItems();
31+
}
32+
exports.pageLoaded = pageLoaded;
33+
3434
function loadItems() {
3535
return new Promise(function (resolve, reject) {
3636
try {
@@ -44,8 +44,8 @@ function loadItems() {
4444
reject(ex);
4545
}
4646
});
47-
}
48-
47+
}
48+
4949
function refreshList(args) {
5050

5151
var pullRefresh = args.object;
@@ -54,16 +54,16 @@ function refreshList(args) {
5454
console.log(response);
5555
// ONLY USING A TIMEOUT TO SIMULATE/SHOW OFF THE REFRESHING
5656
setTimeout(function () {
57-
pullRefresh.setRefreshing(false);
57+
pullRefresh.refreshing = false;
5858
}, 1000);
5959
}, function (err) {
60-
pullRefresh.setRefreshing(false);
60+
pullRefresh.refreshing = false;
6161
alert(err);
6262
});
63-
}
64-
exports.refreshList = refreshList;
65-
66-
63+
}
64+
exports.refreshList = refreshList;
65+
66+
6767

6868
Number.prototype.times = function (func) {
6969
for (var i = 0; i < Number(this) ; i++) {

package.json

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
{
22
"name": "nativescript-pulltorefresh",
3-
"version": "0.1.2",
3+
"version": "1.0.0",
44
"description": "A NativeScript plugin to provide the Pull to Refresh control on any view.",
55
"main": "pulltorefresh.js",
66
"nativescript": {
77
"platforms": {
8-
"android": "1.6.0"
8+
"android": "1.6.0",
9+
"ios": "1.6.0"
910
}
1011
},
1112
"repository": {
@@ -19,7 +20,9 @@
1920
"Pull Refresh",
2021
"SwipeRefreshLayout",
2122
"Material Design",
23+
"UIRefreshControl",
2224
"android",
25+
"ios",
2326
"bradmartin",
2427
"Thorum"
2528
],
@@ -31,7 +34,7 @@
3134
},
3235
{
3336
"name": "Peter Staev",
34-
"email": "peter.staev@gmail.com",
37+
"email": "peter@tangrasoft.com",
3538
"url": "https://github.com/PeterStaev"
3639
}
3740
],

pulltorefresh.android.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ var PullToRefresh = (function (_super) {
5151
onRefresh: function (v) {
5252
var owner = that.get();
5353
if (owner) {
54+
owner.refreshing = true;
5455
owner._emit(common.PullToRefresh.refreshEvent);
5556
}
5657
}

pulltorefresh.android.ts

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,11 +35,6 @@ export class PullToRefresh extends common.PullToRefresh {
3535
get _nativeView(): android.support.v4.widget.SwipeRefreshLayout {
3636
return this._android;
3737
}
38-
39-
//Visibility methods
40-
public setRefreshing(newValue: boolean) {
41-
this._android.setRefreshing(newValue);
42-
}
4338

4439
public _createUI() {
4540

@@ -60,6 +55,7 @@ export class PullToRefresh extends common.PullToRefresh {
6055
onRefresh: function (v) {
6156
var owner = that.get();
6257
if (owner) {
58+
owner.refreshing = true;
6359
owner._emit(common.PullToRefresh.refreshEvent);
6460
}
6561
}

pulltorefresh.d.ts

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,6 @@ declare module "nativescript-pulltorefresh" {
3838
*/
3939
refreshing: boolean;
4040

41-
/*
42-
//* Notify the widget that refresh state has changed.
43-
//*/
44-
//setRefreshing: boolean;
45-
4641
/**
4742
* Raised when a refresh event occurs.
4843
*/

0 commit comments

Comments
 (0)