Proyectos de Subversion Android Microlearning - Nuevo Interface

Rev

Rev 7 | Rev 9 | Ir a la última revisión | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 7 Rev 8
Línea 83... Línea 83...
83
import com.cesams.twogetskills.receiver.ConnectivityReceiver;
83
import com.cesams.twogetskills.receiver.ConnectivityReceiver;
84
import com.cesams.twogetskills.receiver.InternalReceiver;
84
import com.cesams.twogetskills.receiver.InternalReceiver;
85
import com.cesams.twogetskills.room.ResultCount;
85
import com.cesams.twogetskills.room.ResultCount;
86
import com.cesams.twogetskills.viewdata.SlideRefreshUIViewData;
86
import com.cesams.twogetskills.viewdata.SlideRefreshUIViewData;
87
import com.cesams.twogetskills.viewmodel.SlideRefreshUIViewModel;
87
import com.cesams.twogetskills.viewmodel.SlideRefreshUIViewModel;
-
 
88
import com.google.android.material.bottomnavigation.BottomNavigationView;
-
 
89
import com.google.android.material.navigation.NavigationBarView;
88
import com.google.android.material.snackbar.Snackbar;
90
import com.google.android.material.snackbar.Snackbar;
89
import com.google.android.material.navigation.NavigationView;
91
import com.google.android.material.navigation.NavigationView;
Línea 90... Línea 92...
90
 
92
 
91
import androidx.drawerlayout.widget.DrawerLayout;
93
import androidx.drawerlayout.widget.DrawerLayout;
Línea 121... Línea 123...
121
import okhttp3.OkHttpClient;
123
import okhttp3.OkHttpClient;
122
import okhttp3.Request;
124
import okhttp3.Request;
123
import okhttp3.RequestBody;
125
import okhttp3.RequestBody;
124
import okhttp3.Response;
126
import okhttp3.Response;
Línea 125... Línea 127...
125
 
127
 
126
public class MainActivity extends  AppCompatActivity implements ITwoGetSkills,NavigationView.OnNavigationItemSelectedListener {
128
public class MainActivity extends  AppCompatActivity implements ITwoGetSkills {
127
    private boolean isSyncDevice = false;
129
    private boolean isSyncDevice = false;
128
    private boolean isSyncToken = false;
130
    private boolean isSyncToken = false;
129
    private boolean isSyncBatch = false;
131
    private boolean isSyncBatch = false;
130
    private boolean isForeground = false;
132
    private boolean isForeground = false;
Línea 133... Línea 135...
133
    private final static String PREFIX_FRAG = "FRAG";
135
    private final static String PREFIX_FRAG = "FRAG";
134
    private final static String TAG = "C2GS - MainActivity";
136
    private final static String TAG = "C2GS - MainActivity";
Línea 135... Línea 137...
135
 
137
 
136
    private DrawerLayout mDrawer;
138
    private DrawerLayout mDrawer;
137
    private ActionBarDrawerToggle mDrawerToggle;
-
 
138
 
-
 
139
    private HashMap<String, Fragment> fragmentHashMap;
-
 
140
 
139
    private ActionBarDrawerToggle mDrawerToggle;
141
    private ImageView navHeaderUserImage;
-
 
142
 
140
    private ImageView navHeaderUserImage;
143
    private TextView navHeaderUserName;
141
    private TextView navHeaderUserName;
-
 
142
    private TextView navHeaderUserEmail;
-
 
143
 
144
    private TextView navHeaderUserEmail;
144
    private HashMap<String, Fragment> fragmentHashMap;
Línea -... Línea 145...
-
 
145
    private TextView textViewMessageNotConnection;
Línea 145... Línea 146...
145
    private TextView textViewMessageNotConnection;
146
 
146
 
147
    BottomNavigationView mNavigationView;
147
 
148
 
148
 
149
 
149
    private Preference preference;
150
    private Preference preference;
150
    private boolean connected = false;
-
 
-
 
151
    private boolean connected = false;
151
    private ConnectivityReceiver mConnectivityReceiver;
152
    private ConnectivityReceiver mConnectivityReceiver;
152
    private InternalReceiver mInternalReceiver;
153
    private InternalReceiver mInternalReceiver;
Línea 153... Línea 154...
153
    private ProgressBar mProgressBar;
154
    private ProgressBar mProgressBar;
Línea 214... Línea 215...
214
        }
215
        }
Línea 215... Línea 216...
215
 
216
 
Línea 216... Línea 217...
216
        fragmentHashMap = new HashMap<>();
217
        fragmentHashMap = new HashMap<>();
217
 
218
 
218
        mProgressBar = findViewById(R.id.progressBar);
219
        mProgressBar = findViewById(R.id.progressBar);
219
        Toolbar mToolbar = findViewById(R.id.toolbar);
220
        mToolbar = findViewById(R.id.toolbar);
-
 
221
        mToolbar.setOverflowIcon(ContextCompat.getDrawable(getApplicationContext(), R.drawable.notifications));
-
 
222
        setSupportActionBar((Toolbar) findViewById(R.id.toolbar));
-
 
223
        getSupportActionBar().setIcon(R.mipmap.ic_launcher_round);
-
 
224
 
-
 
225
        mNavigationView = findViewById(R.id.bottomNavigationView);
-
 
226
 
-
 
227
        mNavigationView.setOnItemSelectedListener(new NavigationBarView.OnItemSelectedListener() {
-
 
228
            @Override
-
 
229
            public boolean onNavigationItemSelected(@NonNull MenuItem item) {
-
 
230
 
-
 
231
                Log.e("Titulo",""+item.getTitle());
-
 
232
 
-
 
233
              if(item.getTitle().equals("Inicio")){
-
 
234
 
-
 
235
                  setTitleActionBar(getString(R.string.app_name));
-
 
236
                  invokeFragment(Constants.IDX_FRAGMENT_WELCOME);
-
 
237
                  mNavigationView.getMenu().getItem(0).setChecked(true);
-
 
238
 
-
 
239
 
-
 
240
              }
-
 
241
 
-
 
242
                if(item.getTitle().equals("Tópicos")){
-
 
243
 
-
 
244
                    setTitleActionBar(getString(R.string.menu_topics));
-
 
245
                    invokeFragment(Constants.IDX_FRAGMENT_TOPICS);
-
 
246
                    mNavigationView.getMenu().getItem(1).setChecked(true);
-
 
247
 
-
 
248
                }
-
 
249
 
-
 
250
                if(item.getTitle().equals("Progreso")){
-
 
251
 
-
 
252
                    setTitleActionBar(getString(R.string.progress_title));
-
 
253
                    invokeFragment(Constants.IDX_FRAGMENT_PROGRESS);
-
 
254
                    mNavigationView.getMenu().getItem(2).setChecked(true);
-
 
255
 
-
 
256
                }
-
 
257
 
-
 
258
                if(item.getTitle().equals("Ver más")){
-
 
259
 
-
 
260
                    setTitleActionBar(getString(R.string.menu_user_profile));
-
 
261
                    invokeFragment(Constants.IDX_FRAGMENT_USER_PROFILE);
-
 
262
                    mNavigationView.getMenu().getItem(3).setChecked(true);
-
 
263
 
-
 
264
                }
-
 
265
 
-
 
266
                /*switch (item.getItemId()) {
-
 
267
                    case R.id.action_home:
-
 
268
                        setTitleActionBar(getString(R.string.app_name));
-
 
269
                        invokeFragment(Constants.IDX_FRAGMENT_WELCOME);
-
 
270
                        break;
-
 
271
                    case R.id.action_topicos:
-
 
272
                        setTitleActionBar(getString(R.string.menu_topics));
-
 
273
                        invokeFragment(Constants.IDX_FRAGMENT_TOPICS);
-
 
274
 
-
 
275
                        break;
-
 
276
                    case R.id.nav_progress:
-
 
277
 
-
 
278
                        if(preference.getCompanyCount() > 1) {
-
 
279
                            invokeFragment(Constants.IDX_FRAGMENT_COMPANIES);
-
 
280
                        }  else {
-
 
281
                            setTitleActionBar(getString(R.string.menu_progress));
-
 
282
                            invokeFragment(Constants.IDX_FRAGMENT_PROGRESS);
-
 
283
                        }
-
 
284
                        break;
-
 
285
 
-
 
286
                    case R.id.nav_userprofile:
-
 
287
                        setTitleActionBar(getString(R.string.menu_user_profile));
-
 
288
                        invokeFragment(Constants.IDX_FRAGMENT_USER_PROFILE);
-
 
289
                        break;
-
 
290
 
-
 
291
                    case R.id.nav_exit_app:
-
 
292
                        setTitleActionBar(getString(R.string.menu_exit));
-
 
293
                        AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
-
 
294
                        builder.setTitle(R.string.alter_dialog_close_app_title);
-
 
295
                        builder.setMessage(R.string.alter_dialog_close_app_message);
-
 
296
                        builder.setNegativeButton(R.string.alter_dialog_button_no, new DialogInterface.OnClickListener() {
-
 
297
                            @Override
-
 
298
                            public void onClick(DialogInterface dialog, int which) {
-
 
299
 
-
 
300
                            }
-
 
301
                        });
-
 
302
                        builder.setPositiveButton(R.string.alter_dialog_button_yes, new DialogInterface.OnClickListener() {
-
 
303
                            @Override
-
 
304
                            public void onClick(DialogInterface dialog, int which) {
-
 
305
                                signout();
-
 
306
                            }
-
 
307
                        });
-
 
308
 
-
 
309
                        AlertDialog dialog = builder.create();
-
 
310
                        dialog.show();
-
 
311
 
-
 
312
                        break;
-
 
313
 
-
 
314
                    default:
-
 
315
                        throw new IllegalArgumentException("menu option not implemented!!");
-
 
316
                } */
-
 
317
                return false;
-
 
318
            }
-
 
319
        });
Línea 220... Línea 320...
220
        mToolbar.setOverflowIcon(ContextCompat.getDrawable(getApplicationContext(), R.drawable.notifications));
320
 
221
        setSupportActionBar((Toolbar) findViewById(R.id.toolbar));
321
 
222
 
322
 
223
      //  mDrawer = findViewById(R.id.drawer_layout);
323
      //  mDrawer = findViewById(R.id.drawer_layout);
Línea 347... Línea 447...
347
        preference.save();
447
        preference.save();
Línea 348... Línea 448...
348
 
448
 
349
    }
449
    }
Línea -... Línea 450...
-
 
450
    */
350
    */
451
 
351
 
452
    /*
352
    @Override
453
    @Override
353
    public boolean onNavigationItemSelected(@NonNull MenuItem menuItem) {
454
    public boolean onNavigationItemSelected(@NonNull MenuItem menuItem) {
Línea 354... Línea 455...
354
        int title;
455
        int title;
-
 
456
       // mDrawer.closeDrawers();
-
 
457
 
-
 
458
        switch (menuItem.getItemId()) {
-
 
459
            case R.id.action_home:
355
        mDrawer.closeDrawers();
460
                setTitleActionBar(getString(R.string.app_name));
356
 
461
                invokeFragment(Constants.IDX_FRAGMENT_WELCOME);
357
        switch (menuItem.getItemId()) {
462
                break;
358
            case R.id.nav_topics :
-
 
359
                setTitleActionBar(getString(R.string.menu_topics));
-
 
360
                invokeFragment(Constants.IDX_FRAGMENT_TOPICS);
-
 
361
                break;
-
 
Línea 362... Línea 463...
362
            case R.id.nav_timeline:
463
            case R.id.action_topicos:
363
                setTitleActionBar(getString(R.string.menu_timeline));
464
                setTitleActionBar(getString(R.string.menu_topics));
Línea 364... Línea 465...
364
                invokeFragment(Constants.IDX_FRAGMENT_TIMELINE);
465
                invokeFragment(Constants.IDX_FRAGMENT_TOPICS);
Línea 408... Línea 509...
408
 
509
 
Línea 409... Línea 510...
409
        mDrawer.closeDrawer(GravityCompat.START);
510
        mDrawer.closeDrawer(GravityCompat.START);
410
 
511
 
411
        return true;
512
        return true;
412
    }
513
    }
413
 
514
*/
414
    private void createNotificationChannel() {
515
    private void createNotificationChannel() {
415
        // Create the NotificationChannel, but only on API 26+ because
516
        // Create the NotificationChannel, but only on API 26+ because
416
        // the NotificationChannel class is new and not in the support library
517
        // the NotificationChannel class is new and not in the support library
Línea 581... Línea 682...
581
        });
682
        });
Línea 582... Línea 683...
582
 
683
 
Línea -... Línea 684...
-
 
684
 
-
 
685
    }
-
 
686
 
-
 
687
    @Override
-
 
688
    public void hideNavigationAndtoolbar() {
-
 
689
 
-
 
690
        Log.e("Ocultar"," Navigation and Toolbar");
-
 
691
        //accessing it from ui-thread
-
 
692
        runOnUiThread(() -> {
-
 
693
            mNavigationView.setVisibility(View.GONE);
-
 
694
            mToolbar.setVisibility(View.GONE);
-
 
695
        });
-
 
696
 
-
 
697
    }
-
 
698
 
-
 
699
    @Override
-
 
700
    public void showNavigationAndToolbar() {
-
 
701
        runOnUiThread(new Runnable() {
-
 
702
            @Override
-
 
703
            public void run() {
-
 
704
                mNavigationView.setVisibility(View.VISIBLE);
Línea -... Línea 705...
-
 
705
                mToolbar.setVisibility(View.VISIBLE);
Línea 583... Línea 706...
583
 
706
            }
584
    }
707
        });
585
 
708
 
Línea 730... Línea 853...
730
    }
853
    }
Línea 731... Línea 854...
731
 
854
 
732
    @Override
855
    @Override
733
    public void invokeFragment(int fragmentIdxActiveNuevo)
856
    public void invokeFragment(int fragmentIdxActiveNuevo)
-
 
857
    {
-
 
858
        Log.e("Invoco fragmento"," "+fragmentIdxActiveNuevo);
734
    {
859
 
735
        String fragmentKeyActual    = PREFIX_FRAG + preference.getFragmentIdxActive();
860
        String fragmentKeyActual    = PREFIX_FRAG + preference.getFragmentIdxActive();
736
        String fragmentKeyNuevo 	= PREFIX_FRAG + fragmentIdxActiveNuevo;
861
        String fragmentKeyNuevo 	= PREFIX_FRAG + fragmentIdxActiveNuevo;
737
        preference.setFragmentIdxActive(fragmentIdxActiveNuevo);
862
        preference.setFragmentIdxActive(fragmentIdxActiveNuevo);
Línea 749... Línea 874...
749
            }
874
            }
750
        }
875
        }
Línea 751... Línea 876...
751
 
876
 
752
        boolean add = false;
877
        boolean add = false;
753
        fragment = null;
878
        fragment = null;
754
       // getSupportActionBar().setDisplayHomeAsUpEnabled(false);
879
        getSupportActionBar().setDisplayHomeAsUpEnabled(false);
Línea 755... Línea 880...
755
      //  mDrawerToggle.setDrawerIndicatorEnabled(false);
880
      //  mDrawerToggle.setDrawerIndicatorEnabled(false);
756
 
881
 
Línea 766... Línea 891...
766
                 }
891
                 }
767
                break;
892
                break;
Línea 768... Línea 893...
768
 
893
 
Línea 769... Línea -...
769
            case Constants.IDX_FRAGMENT_TOPICS :
-
 
770
 
894
            case Constants.IDX_FRAGMENT_TOPICS :
771
 
895
 
772
               // getSupportActionBar().show();
896
               // getSupportActionBar().show();
773
             //   mDrawerToggle.setDrawerIndicatorEnabled(true);
897
             //   mDrawerToggle.setDrawerIndicatorEnabled(true);
774
                if(fragmentHashMap.containsKey(fragmentKeyNuevo)) {
898
                if(fragmentHashMap.containsKey(fragmentKeyNuevo)) {
775
                    fragment = fragmentHashMap.get(fragmentKeyNuevo);
899
                    fragment = fragmentHashMap.get(fragmentKeyNuevo);
776
                } else {
900
                } else {
777
                    add = true;
901
                    add = true;
778
                    fragment = new WelcomeFragment();
902
                    fragment = new TopicFragment();
Línea 779... Línea 903...
779
                }
903
                }
Línea 876... Línea 1000...
876
                    add = true;
1000
                    add = true;
877
                    fragment = new UserProfileFragment();
1001
                    fragment = new UserProfileFragment();
878
                }
1002
                }
879
                break;
1003
                break;
Línea -... Línea 1004...
-
 
1004
 
-
 
1005
            case Constants.IDX_FRAGMENT_WELCOME:
-
 
1006
                // getSupportActionBar().show();
-
 
1007
                //  mDrawerToggle.setDrawerIndicatorEnabled(true);
-
 
1008
                if(fragmentHashMap.containsKey(fragmentKeyNuevo)) {
-
 
1009
                    fragment = fragmentHashMap.get(fragmentKeyNuevo);
-
 
1010
                } else {
-
 
1011
                    add = true;
-
 
1012
                    fragment = new WelcomeFragment();
-
 
1013
                    Log.e("Vete"," a welcome");
-
 
1014
                }
-
 
1015
                break;
880
 
1016
 
881
            default :
1017
            default :
882
               // getSupportActionBar().hide();
1018
               // getSupportActionBar().hide();
883
                if(fragmentHashMap.containsKey(fragmentKeyNuevo)) {
1019
                if(fragmentHashMap.containsKey(fragmentKeyNuevo)) {
884
                    fragment = fragmentHashMap.get(fragmentKeyNuevo);
1020
                    fragment = fragmentHashMap.get(fragmentKeyNuevo);
Línea 997... Línea 1133...
997
    }
1133
    }
Línea 998... Línea 1134...
998
 
1134
 
999
    @Override
1135
    @Override
1000
    public void setTitleActionBar(String title)
1136
    public void setTitleActionBar(String title)
-
 
1137
    {
1001
    {
1138
 
1002
        getSupportActionBar().setTitle(title);
1139
        getSupportActionBar().setTitle(title);
Línea 1003... Línea 1140...
1003
    }
1140
    }
1004
 
1141
 
Línea 1514... Línea 1651...
1514
    }
1651
    }
Línea 1515... Línea 1652...
1515
 
1652
 
1516
    @Override
1653
    @Override
1517
    public void reloadNavHeader() {
1654
    public void reloadNavHeader() {
1518
        Log.d(TAG, "User Image = " + preference.getImage());
1655
        Log.d(TAG, "User Image = " + preference.getImage());
1519
        navHeaderUserName.setText((preference.getFirstName() + " " + preference.getLastName()).trim());
1656
//        navHeaderUserName.setText((preference.getFirstName() + " " + preference.getLastName()).trim());
Línea 1520... Línea 1657...
1520
        navHeaderUserEmail.setText(preference.getEmail());
1657
  //      navHeaderUserEmail.setText(preference.getEmail());
1521
 
1658