I want to set the event after the initial value has been set. I have tried to set the event handler onStart()
, but it seems that the event is still called for the initial value set, which was don in onCreate()
. Is there a way to set it after the initial value has been set?
class MainActivity : Activity()
{
lateinit var spinner:Spinner;
override fun onCreate(savedInstanceState: Bundle?)
{
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
spinner = findViewById<Spinner>(R.id.spinner);
spinner.setSelection(2);
}
override fun onStart()
{
super.onStart()
spinner.onItemSelectedListener = object : AdapterView.OnItemSelectedListener {
override fun onItemSelected(parent: AdapterView<*>?, view: View?, position: Int, id: Long)
{
Log.d("stack", "onItemSelected($position)");
}
override fun onNothingSelected(parent: AdapterView<*>?)
{
Log.d("stack", "onNothingSelected");
}
}
}
}
Output:
D/stack: onItemSelected(2)