diff --git a/.idea/misc.xml b/.idea/misc.xml
index 22e14b2..33adc96 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -5,6 +5,7 @@
diff --git a/app/src/main/java/com/example/testes/ImageGridAdapter.kt b/app/src/main/java/com/example/testes/ImageGridAdapter.kt
new file mode 100644
index 0000000..e874999
--- /dev/null
+++ b/app/src/main/java/com/example/testes/ImageGridAdapter.kt
@@ -0,0 +1,35 @@
+package com.example.testes
+
+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
+
+class ImageGridAdapter(val imageList: List) :
+ RecyclerView.Adapter() {
+
+ /* Creates and inflates view and return FlowerViewHolder. */
+ override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
+ val view = LayoutInflater.from(parent.context)
+ .inflate(R.layout.image_grid_item, parent, false)
+ return ViewHolder(view)
+ }
+
+ /* Gets current flower and uses it to bind view. */
+ override fun onBindViewHolder(holder: ViewHolder, position: Int) {
+ holder.bind(imageList[position])
+ }
+
+ inner class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
+ private val text: TextView = itemView.findViewById(R.id.text)
+ //private val image: ImageView = itemView.findViewById(R.id.image)
+
+ fun bind(image: BooruImage) {
+ text.text = image.url
+ }
+ }
+
+ override fun getItemCount(): Int = imageList.size
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/testes/ImageGridFragment.kt b/app/src/main/java/com/example/testes/ImageGridFragment.kt
index f914d97..780d2c1 100644
--- a/app/src/main/java/com/example/testes/ImageGridFragment.kt
+++ b/app/src/main/java/com/example/testes/ImageGridFragment.kt
@@ -5,28 +5,13 @@ import androidx.fragment.app.Fragment
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
+import androidx.recyclerview.widget.GridLayoutManager
+import androidx.recyclerview.widget.RecyclerView
-// TODO: Rename parameter arguments, choose names that match
-// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER
-private const val ARG_PARAM1 = "param1"
-private const val ARG_PARAM2 = "param2"
-
-/**
- * A simple [Fragment] subclass.
- * Use the [ImageGridFragment.newInstance] factory method to
- * create an instance of this fragment.
- */
-class ImageGridFragment : Fragment() {
- // TODO: Rename and change types of parameters
- private var param1: String? = null
- private var param2: String? = null
+class ImageGridFragment(val images: List) : Fragment() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- arguments?.let {
- param1 = it.getString(ARG_PARAM1)
- param2 = it.getString(ARG_PARAM2)
- }
}
override fun onCreateView(
@@ -34,26 +19,12 @@ class ImageGridFragment : Fragment() {
savedInstanceState: Bundle?
): View? {
// Inflate the layout for this fragment
- return inflater.inflate(R.layout.fragment_image_grid, container, false)
- }
+ val layoutView = inflater.inflate(R.layout.fragment_image_grid, container, false)
- companion object {
- /**
- * Use this factory method to create a new instance of
- * this fragment using the provided parameters.
- *
- * @param param1 Parameter 1.
- * @param param2 Parameter 2.
- * @return A new instance of fragment ImageGridFragment.
- */
- // TODO: Rename and change types and number of parameters
- @JvmStatic
- fun newInstance(param1: String, param2: String) =
- ImageGridFragment().apply {
- arguments = Bundle().apply {
- putString(ARG_PARAM1, param1)
- putString(ARG_PARAM2, param2)
- }
- }
+ val recyclerView : RecyclerView = layoutView.findViewById(R.id.imageGridRecV)
+ recyclerView.adapter = ImageGridAdapter(images)
+ recyclerView.layoutManager = GridLayoutManager(layoutView.context, 3)
+
+ return layoutView
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/testes/MainActivity.kt b/app/src/main/java/com/example/testes/MainActivity.kt
index 10db946..2b85b2f 100644
--- a/app/src/main/java/com/example/testes/MainActivity.kt
+++ b/app/src/main/java/com/example/testes/MainActivity.kt
@@ -4,6 +4,7 @@ import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.util.Log
import android.widget.TextView
+import androidx.fragment.app.Fragment
import com.example.testes.databinding.ActivityMainBinding
import org.json.JSONArray
import org.json.JSONException
@@ -17,7 +18,9 @@ class MainActivity : AppCompatActivity() {
try {
val array: JSONArray = json.getJSONArray("post")
val list = BooruImage.listFromJsonArray(array)
- Log.i("Image", list[5].toString())
+ loadGrid(list)
+ //Log.i("Image", list.toString())
+
}
catch (e: JSONException) {
e.printStackTrace()
@@ -36,4 +39,11 @@ class MainActivity : AppCompatActivity() {
::imageListFromJson
)
}
+
+ private fun loadGrid(images: List) {
+ val fragmentTransaction = supportFragmentManager.beginTransaction()
+ fragmentTransaction.add(R.id.imageGridRecV, ImageGridFragment(images))
+ fragmentTransaction.commit()
+ }
+
}
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index a1bf4ad..b72a608 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -6,14 +6,9 @@
android:layout_height="match_parent"
tools:context=".MainActivity">
-
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_image_grid.xml b/app/src/main/res/layout/fragment_image_grid.xml
index 77cfa8f..af66ee2 100644
--- a/app/src/main/res/layout/fragment_image_grid.xml
+++ b/app/src/main/res/layout/fragment_image_grid.xml
@@ -3,12 +3,13 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
tools:context=".ImageGridFragment">
-
-
+ />
\ No newline at end of file
diff --git a/app/src/main/res/layout/image_grid_item.xml b/app/src/main/res/layout/image_grid_item.xml
new file mode 100644
index 0000000..d1634ed
--- /dev/null
+++ b/app/src/main/res/layout/image_grid_item.xml
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
\ No newline at end of file