package com.example.marketshareinfo
import android.os.Bundle
import android.widget.Button
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.TextView
class MainActivity : AppCompatActivity() {
private val reasons = listOf(
"Open Source",
"Wide Device Range",
"Affordable Prices",
"Customization",
"Google Services"
)
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val recyclerView = findViewById<RecyclerView>(R.id.recyclerView)
recyclerView.layoutManager = LinearLayoutManager(this)
recyclerView.adapter = ReasonsAdapter(reasons)
val refreshButton = findViewById<Button>(R.id.refreshButton)
refreshButton.setOnClickListener {
Toast.makeText(this, "Data refreshed!", Toast.LENGTH_SHORT).show()
}
}
}
class ReasonsAdapter(private val items: List<String>) : RecyclerView.Adapter<ReasonsAdapter.ViewHolder>() {
class ViewHolder(view: View) : RecyclerView.ViewHolder(view) {
val textView: TextView = view.findViewById(R.id.reasonText)
}
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
val view = LayoutInflater.from(parent.context).inflate(R.layout.reason_item, parent, false)
return ViewHolder(view)
}
override fun onBindViewHolder(holder: ViewHolder, position: Int) {
holder.textView.text = "${position + 1}. ${items[position]}"
}
override fun getItemCount(): Int = items.size
}This app screen uses a RecyclerView to show a numbered list of reasons why Android dominates the mobile market. The list is simple and fixed. The Refresh button at the bottom shows a Toast message when tapped, simulating a data refresh.
The RecyclerView uses a LinearLayoutManager for vertical scrolling. The adapter binds each reason with its number prefix. This keeps the UI clean and easy to read.
This approach is common in Android apps to display lists efficiently and handle user actions like button taps.