package
com.example.gfg
import
android.os.Bundle
import
androidx.fragment.app.Fragment
import
android.view.LayoutInflater
import
android.view.View
import
android.view.ViewGroup
import
android.widget.AdapterView
import
android.widget.ArrayAdapter
import
android.widget.GridView
private
const
val ARG_PARAM1 =
"param1"
private
const
val ARG_PARAM2 =
"param2"
class
fragment : Fragment() {
private
var param1: String? =
null
private
var param2: String? =
null
override fun onCreate(savedInstanceState: Bundle?) {
super
.onCreate(savedInstanceState)
arguments?.let {
param1 = it.getString(ARG_PARAM1)
param2 = it.getString(ARG_PARAM2)
}
}
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
val rootView = inflater.inflate(R.layout.fragment, container,
false
)
val gridView = rootView.findViewById<GridView>(R.id.grid_view)
val adapter = ArrayAdapter<String>(requireContext(), android.R.layout.simple_list_item_1, getData())
gridView.adapter = adapter
gridView.onItemClickListener = AdapterView.OnItemClickListener { _, _, position, _ ->
val selectedItem = adapter.getItem(position)
}
return
rootView
}
private
fun getData(): List<String> {
return
listOf(
"Item 1"
,
"Item 2"
,
"Item 3"
,
"Item 4"
,
"Item 5"
)
}
companion object {
@JvmStatic
fun newInstance(param1: String, param2: String) =
fragment().apply {
arguments = Bundle().apply {
putString(ARG_PARAM1, param1)
putString(ARG_PARAM2, param2)
}
}
}
}