Browse Source

adaded changing Recyclerviewer, but has to be scrolled to change

Simon Hammer 3 years ago
parent
commit
f33b56db26

+ 9 - 15
app/src/main/java/com/noahvogt/miniprojekt/MainActivity.java

@@ -15,17 +15,11 @@ import androidx.appcompat.widget.Toolbar;
 import androidx.drawerlayout.widget.DrawerLayout;
 import androidx.fragment.app.DialogFragment;
 
-import android.view.LayoutInflater;
-import android.view.Menu;
-import android.view.View;
-import android.view.ViewGroup;
-
+import com.noahvogt.miniprojekt.ui.DataBase.Message;
 import com.noahvogt.miniprojekt.ui.home.CustomAdapter;
-import com.noahvogt.miniprojekt.ui.home.Data;
 
 import androidx.recyclerview.widget.LinearLayoutManager;
 import androidx.recyclerview.widget.RecyclerView;
-import androidx.recyclerview.widget.StaggeredGridLayoutManager;
 
 import java.util.ArrayList;
 
@@ -39,17 +33,18 @@ import androidx.navigation.ui.AppBarConfiguration;
 import androidx.navigation.ui.NavigationUI;
 
 
-import com.google.android.material.navigation.NavigationView;
 import com.google.android.material.snackbar.Snackbar;
 
 import static com.noahvogt.miniprojekt.R.id.drawer_layout;
 
 public class MainActivity extends AppCompatActivity implements View.OnClickListener {
 
+
+
+
     private AppBarConfiguration mAppBarConfiguration;
 
-    //imported by simon 2.may from RecyclerView Programm, changed to 23.may Simon to ArrayList<Data>...
-    protected ArrayList<Data> data;
+    protected ArrayList<Message> data;
 
     private AlertDialog dialog;
 
@@ -61,9 +56,6 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
 
 
 
-
-
-
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
@@ -104,10 +96,10 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
         NavigationUI.setupWithNavController(navigationView, navController);
 
         //initDataset();
-        // Lookup the recyclerview in activity layou
+        // Lookup the recyclerview in activity layout
         RecyclerView recyclerView = findViewById(R.id.recyclerView);
         // Initialize contacts
-        data = Data.createContactsList(20);
+        data = CustomAdapter.createEmailList(20);
         // Create adapter passing in the sample user data
         CustomAdapter adapter = new CustomAdapter(data);
         // Attach the adapter to the recyclerview to populate items
@@ -201,4 +193,6 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
     }
 
 
+
+
 }

+ 6 - 4
app/src/main/java/com/noahvogt/miniprojekt/ui/home/Data.java → app/src/main/java/com/noahvogt/miniprojekt/ui/DataBase/Data.java

@@ -1,4 +1,4 @@
-package com.noahvogt.miniprojekt.ui.home;
+package com.noahvogt.miniprojekt.ui.DataBase;
 
 import java.util.ArrayList;
 
@@ -27,12 +27,14 @@ public class Data {
 
 
 
-    private static int lastContactId = 0;
 
-    public static ArrayList<Data> createContactsList(int numContacts) {
+
+    public static ArrayList<Data> createMailList(int numItems) {
         ArrayList<Data> contacts = new ArrayList<Data>();
 
-        for (int i = 1; i <= numContacts; i++) {
+        int lastContactId = 0;
+
+        for (int i = 1; i <= numItems; i++) {
             contacts.add(new Data("Person " + ++lastContactId, "14.04.2021", "This email begins with..",
                     "My Betreff is no that god"));
         }

+ 57 - 0
app/src/main/java/com/noahvogt/miniprojekt/ui/DataBase/Message.java

@@ -0,0 +1,57 @@
+package com.noahvogt.miniprojekt.ui.DataBase;
+
+public class Message {
+
+    private int id = 0;
+    private int account = 0;
+    private String to ;
+    private String cc;
+    private String bcc; //blind carpet copy, not see who sees mails
+    private String from;
+    private String date;
+    private String betreff;
+    private int attachment = 0;
+    private boolean seen = true;
+
+    public int getId(){return id;}
+
+    public int getAccount(){return account;}
+
+    public String getTo(){return to;}
+
+    public String getCc(){return cc;}
+
+    public String getBcc(){return bcc;}
+
+    public  String getFrom(){return from;}
+
+    public String getDate(){return date;}
+
+    public String getBetreff(){return betreff;}
+
+    public int getAttachment(){return attachment;}
+
+    public boolean getSeen(){return seen;}
+
+    public void setId(int i){id = i;}
+
+    public void setAccount(int i){account = i;}
+
+    public void setTo(String s){to = s;}
+
+    public void setCc(String s){cc = s;}
+
+    public void setBcc(String s){bcc = s;}
+
+    public void setFrom(String s){from = s;}
+
+    public void setDate(String s){date = s;}
+
+    public void setBetreff(String s){betreff = s;}
+
+    public void setAttachment(int i){ attachment = i;}
+
+    public void setSeen(boolean b){seen = b;}
+
+
+}

+ 6 - 0
app/src/main/java/com/noahvogt/miniprojekt/ui/gallery/GalleryFragment.java

@@ -13,13 +13,19 @@ import androidx.lifecycle.Observer;
 import androidx.lifecycle.ViewModelProvider;
 
 import com.noahvogt.miniprojekt.R;
+import com.noahvogt.miniprojekt.ui.home.CustomAdapter;
 
 public class GalleryFragment extends Fragment {
 
     private GalleryViewModel galleryViewModel;
 
+
+
     public View onCreateView(@NonNull LayoutInflater inflater,
                              ViewGroup container, Bundle savedInstanceState) {
+
+        CustomAdapter.setInbox(30);
+
         galleryViewModel =
                 new ViewModelProvider(this).get(GalleryViewModel.class);
         View root = inflater.inflate(R.layout.fragment_gallery, container, false);

+ 80 - 7
app/src/main/java/com/noahvogt/miniprojekt/ui/home/CustomAdapter.java

@@ -5,21 +5,27 @@ import android.content.Context;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
-import android.widget.Button;
 import android.widget.TextView;
 
 
+import androidx.appcompat.view.menu.MenuWrapperICS;
 import androidx.recyclerview.widget.RecyclerView;
 
 import com.noahvogt.miniprojekt.R;
+import com.noahvogt.miniprojekt.ui.DataBase.Data;
+import com.noahvogt.miniprojekt.ui.DataBase.Message;
+import com.noahvogt.miniprojekt.ui.gallery.GalleryFragment;
 
-import org.w3c.dom.Text;
+import org.jetbrains.annotations.NotNull;
 
+import java.util.ArrayList;
 import java.util.List;
 
 public class CustomAdapter extends RecyclerView.Adapter<CustomAdapter.ViewHolder> {
 
-    private List<Data> localDataSet;
+    public static Message content = new Message();
+
+    private List<Message> localDataSet;
 
     /**
      * Provide a reference to the type of views that you are using
@@ -52,11 +58,12 @@ public class CustomAdapter extends RecyclerView.Adapter<CustomAdapter.ViewHolder
      * @param dataSet String[] containing the data to populate views to be used
      * by RecyclerView.
      */
-    public CustomAdapter(List<Data> dataSet) {
+    public CustomAdapter(List<Message> dataSet) {
         localDataSet = dataSet;
     }
 
     // Create new views (invoked by the layout manager)
+    @NotNull
     @Override
     public ViewHolder onCreateViewHolder(ViewGroup viewGroup, int viewType) {
         // Create a new view, which defines the UI of the list item
@@ -82,7 +89,7 @@ public class CustomAdapter extends RecyclerView.Adapter<CustomAdapter.ViewHolder
         // contents of the view with that element
         //viewHolder.getTextView().setText(localDataSet[position]);
         // Get the data model based on position
-        Data contact = localDataSet.get(position);
+        Message contact = localDataSet.get(position);
 
         // Set item views based on your views and data model
         TextView nameView = viewHolder.name;
@@ -90,11 +97,11 @@ public class CustomAdapter extends RecyclerView.Adapter<CustomAdapter.ViewHolder
         TextView dateView = viewHolder.date;
         TextView beginView = viewHolder.begin;
 
-        nameView.setText(contact.getName());
+        nameView.setText(contact.getFrom());
         betreffView.setText(contact.getBetreff());
         dateView.setText(contact.getDate());
-        beginView.setText(contact.getBegin());
 
+           
 
     }
 
@@ -103,5 +110,71 @@ public class CustomAdapter extends RecyclerView.Adapter<CustomAdapter.ViewHolder
     public int getItemCount() {
         return localDataSet.size();
     }
+
+
+
+    //to set the content of the Sentfolder by changing the adapter
+    public static void setSent(int numItems){
+
+        for (int i = 1; i <= numItems; i++){
+            content.setBetreff("Hi");
+            content.setFrom("jeffry");
+            content.setDate("Today");
+        }
+
+    }
+
+    //to set the content of the Inboxfolder
+    public static void setInbox(int numItems){
+
+        for (int i =1 ; i <= numItems; i++){
+
+            content.setFrom("Hello");
+            content.setDate("Tomorrow");
+            content.setBetreff("Bye");
+        }
+
+
+    }
+
+
+    //to set the content of the Draftfolder
+    public static void setDraft(int numItems){
+
+        for (int i = 1; i <= numItems; i++){
+            content.setFrom("You");
+            content.setDate("noDay");
+            content.setBetreff("i want to die");
+        }
+
+
+    }
+
+    public static ArrayList<Message> createEmailList(int numItems){
+        ArrayList<Message> content = new ArrayList<Message>();
+
+
+            for (int i = 1; i <= numItems; i++) {
+                content.add(CustomAdapter.content);
+            }
+
+
+
+
+            for (int i = 1; i <= numItems; i++) {
+                content.add(CustomAdapter.content);
+            }
+
+
+
+
+            for (int i = 1; i <= numItems; i++) {
+                content.add(CustomAdapter.content);
+            }
+
+
+        return content;
+
+    }
 }
 

+ 5 - 0
app/src/main/java/com/noahvogt/miniprojekt/ui/home/HomeFragment.java

@@ -21,6 +21,9 @@ public class HomeFragment extends Fragment {
 
     public View onCreateView(@NonNull LayoutInflater inflater,
                              ViewGroup container, Bundle savedInstanceState) {
+
+        CustomAdapter.setSent(20);
+
         homeViewModel =
                 new ViewModelProvider(this).get(HomeViewModel.class);
         View root = inflater.inflate(R.layout.fragment_home, container, false);
@@ -33,4 +36,6 @@ public class HomeFragment extends Fragment {
         });
         return root;
     }
+
+
 }

+ 5 - 0
app/src/main/java/com/noahvogt/miniprojekt/ui/slideshow/SlideshowFragment.java

@@ -13,13 +13,18 @@ import androidx.lifecycle.Observer;
 import androidx.lifecycle.ViewModelProvider;
 
 import com.noahvogt.miniprojekt.R;
+import com.noahvogt.miniprojekt.ui.home.CustomAdapter;
 
 public class SlideshowFragment extends Fragment {
 
     private SlideshowViewModel slideshowViewModel;
 
+
     public View onCreateView(@NonNull LayoutInflater inflater,
                              ViewGroup container, Bundle savedInstanceState) {
+
+        CustomAdapter.setDraft(10);
+
         slideshowViewModel =
                 new ViewModelProvider(this).get(SlideshowViewModel.class);
         View root = inflater.inflate(R.layout.fragment_slideshow, container, false);

+ 1 - 1
build.gradle

@@ -5,7 +5,7 @@ buildscript {
         jcenter()
     }
     dependencies {
-        classpath 'com.android.tools.build:gradle:4.2.1'
+        classpath 'com.android.tools.build:gradle:4.2.2'
 
         // NOTE: Do not place your application dependencies here; they belong
         // in the individual module build.gradle files