Guest User

Untitled

a guest
Aug 16th, 2018
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.21 KB | None | 0 0
  1. Creating an AsyncTask class that can be used for any activity
  2. package de.tablayoutexample;
  3.  
  4. import java.util.List;
  5.  
  6. import android.os.AsyncTask;
  7. import android.util.Log;
  8.  
  9. public class CallWebServiceTask extends AsyncTask<String, String, String> {
  10.  
  11. private PhotosActivity theActivity;
  12.  
  13. public CallWebServiceTask(PhotosActivity theActivity){
  14.  
  15. this.setTheActivity(theActivity);
  16.  
  17. }
  18.  
  19. @Override
  20. protected void onPreExecute(){
  21.  
  22. PhotosActivity.showSpinner();
  23.  
  24. }
  25.  
  26. @Override
  27. protected String doInBackground(String... params) {
  28. // TODO Auto-generated method stub
  29.  
  30. return PhotosActivity.getEventList();
  31. }
  32. @Override
  33. protected void onPostExecute(String result) {
  34.  
  35. List<SingleEvent> thelist = PhotosActivity.parseJSONResponse(result);
  36.  
  37. /*for(int i=0;i<thelist.size();i++){
  38. SingleEvent entry = thelist.get(i);
  39.  
  40. Log.v("Finished", entry.getTitle());
  41.  
  42. }*/
  43.  
  44. theActivity.refreshListView(thelist);
  45.  
  46. PhotosActivity.hideSpinner();
  47.  
  48.  
  49.  
  50. }
  51.  
  52. public PhotosActivity getTheActivity() {
  53. return theActivity;
  54. }
  55.  
  56. public void setTheActivity(PhotosActivity theActivity) {
  57. this.theActivity = theActivity;
  58. }
  59.  
  60.  
  61. }
  62.  
  63. package de.tablayoutexample;
  64.  
  65. import android.app.Activity;
  66. import android.os.AsyncTask;
  67. import android.util.Log;
  68.  
  69. public class CustomActivity extends Activity{
  70.  
  71. public String getEventList() {
  72. // TODO Auto-generated method stub
  73. return null;
  74. }
  75.  
  76. public Object parseJSONResponse(String result) {
  77. // TODO Auto-generated method stub
  78. return null;
  79. }
  80.  
  81. public void showSpinner() {
  82. // TODO Auto-generated method stub
  83.  
  84. }
  85.  
  86. public void refreshListView(Object thelist) {
  87. // TODO Auto-generated method stub
  88.  
  89. }
  90.  
  91. public void hideSpinner() {
  92. // TODO Auto-generated method stub
  93.  
  94. }
  95.  
  96. public class CallWebServiceTask extends AsyncTask<String, String, String> {
  97.  
  98. private CustomActivity theActivity;
  99.  
  100. public CallWebServiceTask(CustomActivity theActivity){
  101.  
  102. this.setTheActivity(theActivity);
  103.  
  104. }
  105.  
  106. @Override
  107. protected void onPreExecute(){
  108.  
  109. theActivity.showSpinner();
  110.  
  111. }
  112.  
  113. @Override
  114. protected String doInBackground(String... params) {
  115. // TODO Auto-generated method stub
  116. Log.i("ADASD","EXECUTED");
  117. return theActivity.getEventList();
  118. }
  119. @Override
  120. protected void onPostExecute(String result) {
  121.  
  122. Object thelist = theActivity.parseJSONResponse(result);
  123.  
  124.  
  125. theActivity.refreshListView(thelist);
  126.  
  127. theActivity.hideSpinner();
  128.  
  129.  
  130.  
  131. }
  132.  
  133. public CustomActivity getTheActivity() {
  134. return theActivity;
  135. }
  136.  
  137. public void setTheActivity(CustomActivity theActivity) {
  138. this.theActivity = theActivity;
  139. }
  140.  
  141.  
  142. }
  143.  
  144.  
  145.  
  146.  
  147. }
  148.  
  149. public List<SingleEvent> parseJSONResponse(String jsonResponse) {
  150.  
  151. //using gson, place all the json into the SingleEvent object and then into a List
  152. Type listType = new TypeToken<List<SingleEvent>>(){}.getType();
  153. List<SingleEvent> events = new Gson().fromJson(jsonResponse, listType);
  154.  
  155.  
  156. return events;
  157.  
  158. }
Add Comment
Please, Sign In to add comment