Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ArrayList<Item> goodItems = new ArrayList<Item>();
- boolean isDone = false;
- do{
- new dataTask().getMyData(new myCallback() {
- // ...some logic here...
- });
- }
- while(goodItems.size() < 20 || isDone != true);
- private class DownloadTask extends AsyncTask<URL, Void, ArrayList<Item>> {
- boolean isDone = false;
- protected Long doInBackground(URL... urls) {
- ArrayList<Item> goodItems = new ArrayList<Item>();
- while (goodItems.size() < 20 || isDone != true) {
- // request and adding of items to goodItems
- }
- return goodItems;
- }
- protected void onPostExecute(ArrayList<Item> result) {
- // update views
- }
- }
- new DownloadTask().execute("exampleurl.com/data");
- MyCallback cb = new MyCallback(){
- if(goodItems.size() < 20) new DataTask().getMyData(cb);
- }
- new DataTask().getMyData(cb);
- ArrayList<Item> goodItems = new ArrayList<Item>();
- void fetchItems() {
- new dataTask().getMyData(new myCallback(){
- @Override
- public void onComplete(List<Item> items) {
- // some logic here
- if (goodItems.size() < 20 || isDone != true) {
- fetchItems();
- }
- }
- });
- }
- void load() {
- new DataTask().getMyData(new MyCallback() {
- void onComplete(List<Item> items) {
- goodItems.addAll(items);
- if (goodItems.size() < 20) {
- load();
- }
- });
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement