diff --git a/app/src/main/java/ru/myitschool/work/ui/main/MainFragment.kt b/app/src/main/java/ru/myitschool/work/ui/main/MainFragment.kt index 821128c..f4eef65 100644 --- a/app/src/main/java/ru/myitschool/work/ui/main/MainFragment.kt +++ b/app/src/main/java/ru/myitschool/work/ui/main/MainFragment.kt @@ -6,6 +6,7 @@ import androidx.fragment.app.Fragment import androidx.fragment.app.viewModels import androidx.navigation.fragment.findNavController import androidx.navigation.toRoute +import com.gfg.example_recyclerview.adapterScrollView import com.squareup.picasso.Picasso import dagger.hilt.android.AndroidEntryPoint import ru.myitschool.work.R @@ -16,6 +17,10 @@ import ru.myitschool.work.ui.qr.result.QrResultDestination import ru.myitschool.work.ui.qr.scan.QrScanDestination import ru.myitschool.work.utils.collectWhenStarted +import androidx.recyclerview.widget.LinearLayoutManager +import androidx.recyclerview.widget.RecyclerView +import ru.myitschool.work.utils.HistoryItem + @AndroidEntryPoint class MainFragment: Fragment(R.layout.fragment_main) { private var _binding: FragmentMainBinding? = null @@ -27,6 +32,51 @@ class MainFragment: Fragment(R.layout.fragment_main) { super.onViewCreated(view, savedInstanceState) _binding = FragmentMainBinding.bind(view) + val recyclerView = binding.recyclerView + + val examList: MutableList = ArrayList() + examList.add( + HistoryItem( + "Math Exam", + "May 23, 2015", + "Best of Luck", + R.drawable.clock, + R.drawable.card + ) + ) + examList.add( + HistoryItem( + "Science Exam", + "June 10, 2015", + "Do Well", + R.drawable.clock, + R.drawable.card + ) + ) + examList.add( + HistoryItem( + "History Exam", + "July 15, 2015", + "All the Best", + R.drawable.clock, + R.drawable.card + ) + ) + examList.add( + HistoryItem( + "English Exam", + "August 1, 2015", + "Stay Confident", + R.drawable.clock, + R.drawable.card + ) + ) + + recyclerView.layoutManager = LinearLayoutManager(requireActivity()) + + val adapter = adapterScrollView(examList) + recyclerView.adapter = adapter + val username = findNavController().currentBackStackEntry?.toRoute()?.username username?.let { user -> val password = findNavController().currentBackStackEntry?.toRoute()?.password diff --git a/app/src/main/java/ru/myitschool/work/utils/adapterScrollView.kt b/app/src/main/java/ru/myitschool/work/utils/adapterScrollView.kt new file mode 100644 index 0000000..eca7365 --- /dev/null +++ b/app/src/main/java/ru/myitschool/work/utils/adapterScrollView.kt @@ -0,0 +1,46 @@ +package com.gfg.example_recyclerview + +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import android.widget.ImageView +import android.widget.TextView +import androidx.recyclerview.widget.RecyclerView +import ru.myitschool.work.R +import ru.myitschool.work.utils.HistoryItem + +class adapterScrollView(private val entryList: List) : + RecyclerView.Adapter() { + + override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): MyViewHolder { + val view = LayoutInflater.from(parent.context).inflate(R.layout.person_card, parent, false) + return MyViewHolder(view) + } + + override fun onBindViewHolder(holder: MyViewHolder, position: Int) { + val examItem = entryList[position] + + holder.entryName.text = examItem.entryName + holder.entryDate.text = examItem.entryDate + holder.entryMessage.text = examItem.entryMessage + + if(examItem.entryPicTime != null) + holder.entryPicTime.setImageResource(examItem.entryPicTime!!) + + if(examItem.entryPicCard != null) + holder.entryPicCard.setImageResource(examItem.entryPicCard!!) + } + + override fun getItemCount(): Int { + return entryList.size + } + + // ViewHolder class + class MyViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) { + val entryName: TextView = itemView.findViewById(R.id.EntryName) + val entryDate: TextView = itemView.findViewById(R.id.EntryDate) + val entryMessage: TextView = itemView.findViewById(R.id.EntryMessage) + val entryPicTime: ImageView = itemView.findViewById(R.id.entryPicTime) + val entryPicCard: ImageView = itemView.findViewById(R.id.entryPicCard) + } +} diff --git a/app/src/main/java/ru/myitschool/work/utils/recyclerview.kt b/app/src/main/java/ru/myitschool/work/utils/recyclerview.kt new file mode 100644 index 0000000..9dc4ef2 --- /dev/null +++ b/app/src/main/java/ru/myitschool/work/utils/recyclerview.kt @@ -0,0 +1,18 @@ +package ru.myitschool.work.utils + +class HistoryItem { + var entryName: String? = null + var entryDate: String? = null + var entryMessage: String? = null + var entryPicTime: Int? = null + var entryPicCard: Int? = null + + constructor(entryName:String, entryDate:String, entryMessage:String, entryPicTime:Int, entryPicCard:Int){ + this.entryName = entryName + this.entryDate = entryDate + this.entryMessage = entryMessage + this.entryPicTime = entryPicTime + this.entryPicCard = entryPicCard + } + +} \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_main.xml b/app/src/main/res/layout/fragment_main.xml index 9d4b9d4..2573be0 100644 --- a/app/src/main/res/layout/fragment_main.xml +++ b/app/src/main/res/layout/fragment_main.xml @@ -130,9 +130,11 @@ android:textColorLink="#FFFFFF" android:textSize="24sp" android:textStyle="normal" + android:visibility="gone" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/error" /> + app:layout_constraintTop_toBottomOf="@+id/error" + tools:visibility="gone" /> + tools:context=".MainActivity"> + + diff --git a/app/src/main/res/layout/person_card.xml b/app/src/main/res/layout/person_card.xml index 278d67c..6ebdf39 100644 --- a/app/src/main/res/layout/person_card.xml +++ b/app/src/main/res/layout/person_card.xml @@ -18,7 +18,7 @@ android:textSize="16sp" />