dm6801

MyTask_02 - TaskActivity.java

Dec 27th, 2017
54
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.77 KB | None | 0 0
  1. package com.example.admin.mytask;
  2.  
  3. import android.app.AlertDialog;
  4. import android.content.Context;
  5. import android.content.DialogInterface;
  6. import android.content.Intent;
  7. import android.content.SharedPreferences;
  8. import android.support.v7.app.AppCompatActivity;
  9. import android.os.Bundle;
  10. import android.util.Log;
  11. import android.view.View;
  12. import android.widget.Button;
  13. import android.widget.EditText;
  14. import android.widget.ListView;
  15. import android.widget.TextView;
  16.  
  17. import java.util.ArrayList;
  18. import java.util.HashSet;
  19. import java.util.List;
  20. import java.util.Set;
  21.  
  22. public class TaskActivity extends AppCompatActivity {
  23.     private String currentUser;
  24.     private Context context;
  25.     UtlUserSP userUtil = new UtlUserSP();
  26.     TaskAdapter myAdapter;
  27.     public static boolean changesMade = false;
  28.  
  29.     TextView taskUser;
  30.     EditText newTask;
  31.     Button addTask, saveTasks;
  32.     ListView taskList;
  33.     List<String> myTasks;
  34.     Set myTasksSet;
  35.  
  36.     @Override
  37.     protected void onCreate(Bundle savedInstanceState) {
  38.         super.onCreate(savedInstanceState);
  39.         setContentView(R.layout.activity_task);
  40.         setPointer();
  41.     }
  42.  
  43.     @Override
  44.     public void onBackPressed() {
  45.         if (changesMade) {
  46.             changesMade = false;
  47.  
  48.             new AlertDialog.Builder(context)
  49.                 .setTitle("Save Changes")
  50.                 .setMessage("Changes were made.\nSave progress?")
  51.                 .setPositiveButton("Yes", new DialogInterface.OnClickListener() {
  52.                     @Override
  53.                     public void onClick(DialogInterface dialogInterface, int idx) {
  54.                         dialogInterface.dismiss();
  55.                         userUtil.saveUserTasks(currentUser, myTasks);
  56.                         TaskActivity.super.onBackPressed();
  57.                     }
  58.                 })
  59.                 .setNegativeButton("No", new DialogInterface.OnClickListener() {
  60.                 @Override
  61.                 public void onClick(DialogInterface dialogInterface, int idx) {
  62.                         dialogInterface.dismiss();
  63.                         finish();
  64.                     }
  65.                 })
  66.                 .show();
  67.         } else {
  68.             super.onBackPressed();
  69.         }
  70.     }
  71.  
  72.     private void setPointer() {
  73.         this.context = this;
  74.         userUtil.setContext(context);
  75.  
  76.         //get current Intent
  77.         Intent intent = getIntent();
  78.  
  79.         //extract passed info
  80.         this.currentUser = intent.getStringExtra("userName");
  81.  
  82.         taskUser = findViewById(R.id.txtUserName);
  83.         taskUser.setText(currentUser);
  84.  
  85.         //TaskAdapter myAdapter = new TaskAdapter(context, myTasks);
  86.         taskList = findViewById(R.id.lstTask);
  87.         taskList.setAdapter(myAdapter);
  88.  
  89.         newTask = findViewById(R.id.etMyTask);
  90.  
  91.         addTask = findViewById(R.id.btnTaskAdd);
  92.         addTask.setOnClickListener(new View.OnClickListener() {
  93.             @Override
  94.             public void onClick(View view) {
  95.                 if (newTask.getText().toString().isEmpty()) {
  96.                     return;
  97.                 }
  98.  
  99.                 myTasks.add(newTask.getText().toString());
  100.                 //myAdapter = new TaskAdapter(context, myTasks);
  101.                 //taskList.setAdapter(myAdapter);
  102.                 newTask.setText("");
  103.  
  104.                 changesMade = true;
  105.             }
  106.         });
  107.  
  108.         saveTasks = findViewById(R.id.btnTaskSave);
  109.         saveTasks.setOnClickListener(new View.OnClickListener() {
  110.             @Override
  111.             public void onClick(View view) {
  112.                 userUtil.saveUserTasks(currentUser, myTasks);
  113.  
  114.                 changesMade = false;
  115.             }
  116.         });
  117.  
  118.         setData();
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.         /* DEBUG */
  126.         Button debugTask = findViewById(R.id.btnTaskDEBUG);
  127.         debugTask.setOnClickListener(new View.OnClickListener() {
  128.             @Override
  129.             public void onClick(View view) {
  130.                 myTasks.add("Le Asics");
  131.                 myTasks.add("le Curason");
  132.                 myTasks.add("Le Eiffel");
  133.                 myTasks.add("Le Le");
  134.                 changesMade = true;
  135.  
  136.                 //myAdapter = new TaskAdapter(context, myTasks);
  137.                 //taskList.setAdapter(myAdapter);
  138.                 myAdapter.notifyDataSetChanged();
  139.             }
  140.         });
  141.  
  142.     }
  143.  
  144.     private void setData() {
  145.         SharedPreferences prefs = context.getSharedPreferences(currentUser, Context.MODE_PRIVATE);
  146.         myTasksSet = prefs.getStringSet(currentUser, new HashSet<String>());
  147.         myTasks = new ArrayList<>();
  148.  
  149.         if (myTasksSet.size() > 0) {
  150.             myTasks.addAll(myTasksSet);
  151.         }
  152.  
  153.         myAdapter = new TaskAdapter(context, myTasks);
  154.         taskList.setAdapter(myAdapter);
  155.     }
  156.  
  157. }
Add Comment
Please, Sign In to add comment