Advertisement
Guest User

NotificationFragment

a guest
Jan 19th, 2020
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.67 KB | None | 0 0
  1. package com.informatika.umm.myapplication.ui.activity.notification;
  2.  
  3.  
  4. import android.os.Bundle;
  5.  
  6. import androidx.annotation.NonNull;
  7. import androidx.annotation.Nullable;
  8. import androidx.fragment.app.Fragment;
  9. import androidx.preference.Preference;
  10. import androidx.preference.PreferenceFragmentCompat;
  11. import androidx.preference.SwitchPreferenceCompat;
  12.  
  13. import android.util.Log;
  14. import android.widget.Toast;
  15.  
  16. import com.informatika.umm.myapplication.BuildConfig;
  17. import com.informatika.umm.myapplication.R;
  18. import com.informatika.umm.myapplication.api.Client;
  19. import com.informatika.umm.myapplication.api.Service;
  20. import com.informatika.umm.myapplication.model.Movie;
  21. import com.informatika.umm.myapplication.model.MovieResponse;
  22. import com.informatika.umm.myapplication.service.ReminderDailyReceiver;
  23. import com.informatika.umm.myapplication.service.ReminderReleaseReceiver;
  24.  
  25. import java.text.SimpleDateFormat;
  26. import java.util.ArrayList;
  27. import java.util.Date;
  28. import java.util.List;
  29. import java.util.Locale;
  30.  
  31. import retrofit2.Call;
  32. import retrofit2.Callback;
  33. import retrofit2.Response;
  34.  
  35. /**
  36.  * A simple {@link Fragment} subclass.
  37.  */
  38. public class NotificationFragment extends PreferenceFragmentCompat implements Preference.OnPreferenceChangeListener {
  39.  
  40.     private static final String KEY_DAILY = "reminder_daily";
  41.     private static final String KEY_RELEASE = "reminder_release";
  42.     private ReminderDailyReceiver dailyReceiver;
  43.     private ReminderReleaseReceiver releaseReceiver;
  44.  
  45.     @Override
  46.     public void onCreate(@Nullable Bundle savedInstanceState) {
  47.         super.onCreate(savedInstanceState);
  48.         dailyReceiver = new ReminderDailyReceiver();
  49.         releaseReceiver = new ReminderReleaseReceiver();
  50.  
  51.         SwitchPreferenceCompat switchDaily = findPreference(KEY_DAILY);
  52.         SwitchPreferenceCompat switchRelease = findPreference(KEY_RELEASE);
  53.  
  54.         if (switchDaily != null) {
  55.             switchDaily.setOnPreferenceChangeListener(this);
  56.         }
  57.  
  58.         if (switchRelease != null) {
  59.             switchRelease.setOnPreferenceChangeListener(this);
  60.         }
  61.     }
  62.  
  63.     @Override
  64.     public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
  65.         setPreferencesFromResource(R.xml.reminder_preferences, rootKey);
  66.     }
  67.  
  68.     @Override
  69.     public boolean onPreferenceChange(Preference preference, Object newValue) {
  70.         String keyPreference = preference.getKey();
  71.         boolean isActive = (boolean) newValue;
  72.  
  73.         switch (keyPreference) {
  74.             case KEY_DAILY:
  75.                 if (isActive) {
  76.                     dailyReceiver.setTimeDailyReminder(getActivity());
  77.                     Toast.makeText(getContext(), "Enable Daily Reminder", Toast.LENGTH_SHORT).show();
  78.                 } else {
  79.                     if (getActivity() != null) {
  80.                         dailyReceiver.cancelDailyReminder(getActivity());
  81.                         Toast.makeText(getContext(), "Disable Daily Reminder", Toast.LENGTH_SHORT).show();
  82.                     }
  83.                 }
  84.                 return true;
  85.             case KEY_RELEASE:
  86.                 if (isActive) {
  87.                     releaseReceiver.setTimeReleaseReminder(getActivity());
  88.                     Toast.makeText(getContext(), "Enable Release Reminder", Toast.LENGTH_SHORT).show();
  89.                 } else {
  90.                     if (getActivity() != null) {
  91.                         releaseReceiver.cancelReleaseReminder(getActivity());
  92.                         Toast.makeText(getContext(), "Disable Release Reminder", Toast.LENGTH_SHORT).show();
  93.                     }
  94.                 }
  95.                 return true;
  96.         }
  97.         return false;
  98.     }
  99. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement