Advertisement
Guest User

myApp160117

a guest
Jan 16th, 2017
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 11.36 KB | None | 0 0
  1. //TaskAdaptetr
  2. ------------------
  3. import android.content.Context;
  4. import android.os.StrictMode;
  5. import android.view.LayoutInflater;
  6. import android.view.View;
  7. import android.view.ViewGroup;
  8. import android.widget.BaseAdapter;
  9. import android.widget.CheckBox;
  10. import android.widget.EditText;
  11. import android.widget.ImageView;
  12. import android.widget.TextView;
  13.  
  14. import com.example.android.loginapp.Cls.ClsTask;
  15. import com.example.android.loginapp.R;
  16. import com.example.android.loginapp.UtlShared;
  17.  
  18. import java.util.List;
  19.  
  20. /**
  21.  * Created by Android on 16/01/2017.
  22.  */
  23.  
  24. public class TaskAdapter extends BaseAdapter {
  25.     Context context;
  26.     String spUser;
  27.     List<ClsTask> myTaskList;
  28.     public TaskAdapter(Context context,String spUser,List<ClsTask> myTaskList)
  29.     {
  30.         this.context=context;
  31.         this.spUser=spUser;
  32.         this.myTaskList=myTaskList;
  33.     }
  34.     @Override
  35.     public int getCount() {
  36.         return myTaskList.size();
  37.     }
  38.  
  39.     @Override
  40.     public Object getItem(int i) {
  41.         return null;
  42.     }
  43.  
  44.     @Override
  45.     public long getItemId(int i) {
  46.         return 0;
  47.     }
  48.  
  49.     @Override
  50.     public View getView(final int position, View view, ViewGroup viewGroup) {
  51.      final ClsTask singleItem=myTaskList.get(position);
  52.      final View singleTask= LayoutInflater.from(context).inflate(R.layout.task_layout,null,false);
  53.      TextView txtTask=(TextView)singleTask.findViewById(R.id.txtTask);
  54.      txtTask.setText(singleItem.taskName);
  55.         ImageView btnTrash=(ImageView)singleTask.findViewById(R.id.btnTrash);
  56.         btnTrash.setOnClickListener(new View.OnClickListener() {
  57.             @Override
  58.             public void onClick(View view) {
  59.                 UtlShared.removeTask(context,spUser,singleItem.taskName);
  60.                 myTaskList.remove(position);
  61.                 notifyDataSetChanged();
  62.             }
  63.         });
  64.         CheckBox cbIsDone=(CheckBox)singleTask.findViewById(R.id.cbIsDone);
  65.       cbIsDone.setChecked(singleItem.isDone);
  66.         cbIsDone.setOnClickListener(new View.OnClickListener() {
  67.             @Override
  68.             public void onClick(View view) {
  69.  
  70.             }
  71.         });
  72.         return singleTask;
  73.  
  74.     }
  75. }
  76. -------------------------
  77. //ClsTask
  78. --------------------------
  79. package com.example.android.loginapp.Cls;
  80.  
  81. import android.content.Context;
  82.  
  83. import java.util.Date;
  84.  
  85. /**
  86.  * Created by Android on 16/01/2017.
  87.  */
  88.  
  89. public class ClsTask {
  90.     public Date taskDate;
  91.     public Date taskDue;
  92.     public String taskName;
  93.     public String taskDetails;
  94.     public boolean isDone;
  95.     public ClsTask(String userTask,String myData)
  96.     {
  97.         String[]myTaskInfo=myData.split(",");
  98.         this.taskDate=new Date();
  99.         this.taskDue=new Date();
  100.         this.taskName=userTask;
  101.         this.taskDetails=myTaskInfo[3];
  102.         this.isDone=myTaskInfo[4].equals("1");
  103.     }
  104.  
  105. }
  106. --------------------------------
  107. //TaskActivity
  108. ---------------------------------
  109. package com.example.android.loginapp;
  110.  
  111.  
  112.         import android.app.Dialog;
  113.         import android.content.Context;
  114.         import android.content.DialogInterface;
  115.         import android.support.v7.app.AlertDialog;
  116.         import android.support.v7.app.AppCompatActivity;
  117.         import android.os.Bundle;
  118.         import android.view.LayoutInflater;
  119.         import android.view.View;
  120.         import android.widget.Button;
  121.         import android.widget.EditText;
  122.         import android.widget.ListView;
  123.         import android.widget.TextView;
  124.         import android.widget.Toast;
  125.  
  126.         import com.example.android.loginapp.Adapters.TaskAdapter;
  127.  
  128. public class TaskActivity extends AppCompatActivity {
  129.     Context context;
  130.     TextView taskLogo;
  131.     Button btnAddTask;
  132.     String spUser="";
  133.     ListView lvTask;
  134.     @Override
  135.     protected void onCreate(Bundle savedInstanceState) {
  136.         super.onCreate(savedInstanceState);
  137.         setContentView(R.layout.activity_task);
  138.         setPointers();
  139.         getExtra();
  140.         showData();
  141.     }
  142.     private void getExtra()
  143.     {
  144.         String myData=getIntent().getStringExtra("userName");
  145.         taskLogo.setText("Hello "+myData);
  146.         Toast.makeText(context,"user"+myData+"is logged in",Toast.LENGTH_SHORT).show();
  147.         spUser=getIntent().getStringExtra("user");
  148.     }
  149.     private void setPointers()
  150.     {
  151.         this.context=this;
  152.         taskLogo=(TextView)findViewById(R.id.taskLogo);
  153.         btnAddTask=(Button)findViewById(R.id.btnAddTask);
  154.         btnAddTask.setOnClickListener(new View.OnClickListener() {
  155.             @Override
  156.             public void onClick(View v) {
  157.                 showAdAddTask();
  158.             }
  159.         });
  160.         lvTask=(ListView)findViewById(R.id.lvTask);
  161.     }
  162.     private void showData()
  163.     {
  164.         TaskAdapter myAdapter=new TaskAdapter(context,spUser,UtlShared.getAllTask(context,spUser));
  165.         lvTask.setAdapter(myAdapter);
  166.     }
  167.     private void showAdAddTask()
  168.     {
  169.         AlertDialog.Builder adTask=new AlertDialog.Builder(context);
  170.         View inflatedTask= LayoutInflater.from(context).inflate(R.layout.alert_dialog_new_task,null,false);
  171.         final EditText myNewTask=(EditText)inflatedTask.findViewById(R.id.txtNewTask);
  172.         adTask.setView(inflatedTask);
  173.         adTask.setPositiveButton(getResources().getString(R.string.adPosBtn), new DialogInterface.OnClickListener() {
  174.             @Override
  175.             public void onClick(DialogInterface dialog, int which) {
  176.                 String myTask=myNewTask.getText().toString();
  177.                 UtlShared.addTask(context,spUser,myTask);
  178.                 showData();
  179.             }
  180.         });
  181.         adTask.setNegativeButton(getResources().getString(R.string.adNegBtn), new DialogInterface.OnClickListener() {
  182.             @Override
  183.             public void onClick(DialogInterface dialog, int which) {
  184.                 dialog.dismiss();
  185.             }
  186.         });
  187.         adTask.show();
  188.     }
  189.  
  190. }
  191.  
  192. --------------------------------
  193. //UtlShared
  194. ------------------------------
  195. package com.example.android.loginapp;
  196.  
  197. import android.content.Context;
  198. import android.content.SharedPreferences;
  199. import android.os.StrictMode;
  200.  
  201. import com.example.android.loginapp.Cls.ClsTask;
  202.  
  203. import java.util.ArrayList;
  204. import java.util.List;
  205. import java.util.Map;
  206.  
  207. /**
  208.  * Created by esra on 1/14/2017.
  209.  */
  210.  
  211. public class UtlShared {
  212.     Context context;
  213.     SharedPreferences userPref;
  214.     SharedPreferences.Editor editor;
  215.     public UtlShared(Context context)
  216.     {
  217.         this.context=context;
  218.         userPref=context.getSharedPreferences("users",Context.MODE_PRIVATE);
  219.         editor=userPref.edit();
  220.     }
  221.     //return true if user excists
  222.     //else return false
  223.     public boolean checkUser(String userName)
  224.     {
  225.         String checkString=userPref.getString(userName,"n/a");
  226.         return !checkString.equals("n/a");
  227.     }
  228.     //returns true if password matches the user name
  229.     //else returns false
  230.     public boolean checkPass(String userName,String password)
  231.     {
  232.         if(!checkUser(userName))return false;
  233.         String[] values=userPref.getString(userName,"n/a").split(",");
  234.         String pass=values[0];
  235.         return pass.equals(password);
  236.     }
  237.     public void addUser(String userName,String pass,String nickName)
  238.     {
  239.         editor.putString(userName,(pass+","+nickName));
  240.         editor.commit();
  241.     }
  242.     public String getNickName(String userName)
  243.     {
  244.         String[] values=userPref.getString(userName,"n/a").split(",");
  245.         return values[1];
  246.     }
  247.     public static void addTask(Context context,String spUser,String userTask)
  248.     {
  249.         SharedPreferences myPref=context.getSharedPreferences(spUser,Context.MODE_PRIVATE);
  250.         SharedPreferences.Editor editor=myPref.edit();
  251.         editor.putString(userTask,"date"+","+"due"+","+userTask+","+"userDetails"+","+"0");
  252.         editor.commit();
  253.  
  254.     }
  255.     public static void taskStatusToggle(Context context,String spUser,String userTask)
  256.     {
  257.         SharedPreferences myPref=context.getSharedPreferences(spUser,Context.MODE_PRIVATE);
  258.         SharedPreferences.Editor editor=myPref.edit();
  259.         boolean taskStatus=!(myPref.getString(userTask,"0").equals("1"));
  260.         editor.putString(userTask,taskStatus?"1":"0");
  261.         editor.commit();
  262.     }
  263.     public static List<ClsTask> getAllTask(Context context,String spUser)
  264.     {
  265.         SharedPreferences myPref=context.getSharedPreferences(spUser,Context.MODE_PRIVATE);
  266.         SharedPreferences.Editor editor=myPref.edit();
  267.         List<ClsTask> myTasks=new ArrayList<>();
  268.         Map<String,?> tasks=myPref.getAll();
  269.         for(Map.Entry<String,?> singleTask:tasks.entrySet())
  270.         {
  271.             myTasks.add(new ClsTask(singleTask.getKey(),singleTask.getValue().toString()));
  272.         }
  273.         return myTasks;
  274.     }
  275.     public static void removeTask(Context context,String spUser,String taskName)
  276.     {
  277.       SharedPreferences myPref=context.getSharedPreferences(spUser,Context.MODE_PRIVATE);
  278.         SharedPreferences.Editor editor=myPref.edit();
  279.         editor.remove(taskName);
  280.         editor.commit();
  281.     }
  282. }
  283. --------------------------
  284. //task_layout
  285. -----------------------------
  286. <?xml version="1.0" encoding="utf-8"?>
  287. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  288.     android:orientation="horizontal" android:layout_width="match_parent"
  289.     android:layout_height="wrap_content">
  290.     <CheckBox
  291.         android:layout_width="match_parent"
  292.         android:layout_height="match_parent"
  293.         android:id="@+id/cbIsDone"
  294.         android:layout_weight="5"/>
  295.     <TextView
  296.         android:layout_width="match_parent"
  297.         android:layout_height="match_parent"
  298.         android:text="@string/txtTask"
  299.         android:id="@+id/txtTask"
  300.         android:layout_weight="2"
  301.         android:textSize="22sp"
  302.         android:gravity="center_horizontal|left"/>
  303.     <ImageView
  304.         android:layout_width="match_parent"
  305.         android:layout_height="match_parent"
  306.         android:src="@drawable/delete_task"
  307.         android:layout_weight="5"
  308.         android:id="@+id/btnTrash"/>
  309. </LinearLayout>
  310. -----------------------------
  311. //strings
  312. ------------------------------
  313. <resources>
  314.     <!--activity_login layout-->
  315.     <string name="app_name">MyLoginApp</string>
  316.     <string name="logo_login">Log In</string>
  317.     <string name="username_hint">Enter your name...</string>
  318.     <string name="pass_hint">Enter your password...</string>
  319.     <string name="btn_login">Log in</string>
  320.     <string name="btn_reg">Register</string>
  321.     <string name="msgLogo">Log in</string>
  322.     <!--activity_register layout-->
  323.     <string name="reg_logo">Register</string>
  324.     <string name="regHintUserName">Enter your name...</string>
  325.     <string name="regHintPass">Enter a pssword...</string>
  326.     <string name="checkPass">Enter your password again...</string>
  327.     <string name="nickName">Enter your nick name...</string>
  328.     <string name="btn_cancel">Cancel</string>
  329.     <!--activity_task layout-->
  330.     <string name="task_logo"></string>
  331.     <string name="add_task">Add a Task</string>
  332.     <!--alertv dialog new task-->
  333.     <string name="adLogo">New Task</string>
  334.     <string name="adTxtHint">write a new task here...</string>
  335.     <string name="adPosBtn">OK</string>
  336.     <string name="adNegBtn">Cancel</string>
  337.     <!--task layout-->
  338.     <string name="txtTask">single item..</string>
  339. </resources>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement