Advertisement
Guest User

Untitled

a guest
Nov 20th, 2018
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.67 KB | None | 0 0
  1.  
  2. ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  3. -------------------------------------------------------- ON INIT -------------------------------------------------------------------------------------------------------------------------
  4. ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  5.  
  6. 1. User Login --- [CREDENTIALS] --> HomeActivity
  7. 2. HomeActivity:OnCreate{
  8. new DataHandler() ----> DataHandler
  9. }
  10. 3. DataHandler:Constructor() {
  11.  
  12. Async Calls: InitWeather() --[ OnPostExecute ]--> InitChatIDs() --[ OnPostExecute ]--> InitConnections() --[ OnPostExecute ]--> MainActivity:loadHomeFragment();
  13.  
  14. }
  15. 4. MainActivity:loadHomeFragment() -> HomeFragment displays, app waits
  16.  
  17. ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  18. ------------------------------------------------ <<User Switches To Chat Fragment>> -> --------------------------------------------------------------------------------------------------------
  19. ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  20.  
  21.  
  22. 1. MainActivity:onNavigationItemSelected(){ //InnerClass at top of HomeActivity
  23.  
  24. DataHandler mData.getChats(true) -> // call to mData method to update whatever you need (update messges, etc). Sometimes this requires a true boolean to trigger fragment switching.
  25. }
  26.  
  27. 2. DataHandler:getChats(true/false) {
  28. URI uri = new Uri....
  29. if(true){
  30. AsyncTask
  31. onPostExecute(updateChatsTransition) //update chats and transition to new fragment
  32. } else {
  33. AsyncTask
  34. onPostExecute(updateChats) //just update values in data structures, don't switch fragments.
  35. }
  36. }
  37.  
  38. 3. updateChats(){
  39.  
  40. JsonResults -> ChatObject -> HomeActivity:mJsonData //jsondata is updated with new chats if any
  41. //(or message data, depending on what is being done)
  42.  
  43. if (transition){
  44. HomeActivity:navigateChats()
  45. }
  46. }
  47.  
  48. 4. HomeActivity:navigateChats(){
  49.  
  50. Chats[] = DataHandler.getChatArray(mJsonData.get(chats)); // method in data handler that converts json data to Chats[]
  51.  
  52. Frag frag = new Frag;
  53. frag.setArguments(chats)
  54. loadfragment(frag);
  55. }
  56.  
  57. ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  58. ------------------------------------------------ <<FRAGMENT WANTS TO ADJUST DATA>> --------------------------------------------------------------------------------------------------------
  59. ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  60.  
  61.  
  62. 1. Fragment -> calls HomeActivity:<THE PROPER ASSOCIATED LISTENER>
  63.  
  64. 2. HomeActivity:<THE PROPER ASSOCIATED LISTENER> {
  65.  
  66. DataHandler.update/get<WHATEVER SHOULD BE UPDATED>(True/False [for fragment swapping] )
  67.  
  68. }
  69. 3. DataHandler:Update<Whatever>(True/False){
  70. URI uri ...
  71. AsyncCall -> MainActivity:<Method in main activity that updates data>
  72. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement