У меня проблема, поэтому я создаю панировочные сухари с 4 страницами, но он использует только 1 фрагмент.поэтому 4 страницы вызывают только 1 макет.но макет я делю на 4 части используя видимость исчезла.Проблема в первом макете, у меня есть 2 счетчика, данные в первом счетчике статичны, а данные во втором счетчике взяты из базы данных, которую я называю с помощью API.Когда я уже выбрал элемент в обоих вращателях, а затем перехожу на следующую страницу, данные во втором вращателе снова перезагружаются.Таким образом, значение, которое выбрано, становится не выбранным.Но первый счетчик остается на месте, как я хочу.
Я уже даю подтверждение счетчика, если он равен нулю, но результат все тот же, он снова загружается.
Это мой код наviewCreated
if (arguments?.getInt(ARG_STEP_NUMBER)==0){
dataMotor.visibility = View.VISIBLE
}else if (arguments?.getInt(ARG_STEP_NUMBER)==1){
dataPembayaran.visibility = View.VISIBLE
}else if (arguments?.getInt(ARG_STEP_NUMBER)==2){
dataAsuransiDendaWilayah.visibility = View.VISIBLE
}else if (arguments?.getInt(ARG_STEP_NUMBER)==3){
dataPembeli.visibility = View.VISIBLE
dataFakturSTNK.visibility = View.VISIBLE
dataDokumen.visibility = View.VISIBLE
}
/*Spinner*/
getSeries()
getOtr()
Это первый счетчик, использующий статические данные.
fun getOtr(){
val data = dataOTR
val adapter = CustomAdapter<String?>(activity,
R.layout.spinner_custom, R.layout.spinner_dropdown_item, data)
spnOTR?.adapter = adapter
if(spnOTR.getSelectedItem()==null){
Toast.makeText(context, "Nothing selected",
Toast.LENGTH_SHORT).show()
}else{
spnOTR?.onItemSelectedListener = object :
AdapterView.OnItemSelectedListener {
override fun onItemSelected(parentView: AdapterView<*>,
selectedItemView: View, position: Int, id: Long) {
selectedOTR = dataOTR?.get(position).toString()
}
override fun onNothingSelected(parentView: AdapterView<*>) {
}
}
}
}
Это второй счетчик, использующий API
fun getSeries(){
APIMDM.getSeries().enqueue(object : Callback<Series> {
override fun onResponse(call: Call<Series>, response:
Response<Series>) {
if (response.code() == 200)
{
dataSeries = ArrayList()
dataSeries?.add(0, null)
response.body()?.data?.forEach { dataSeries?.add(it) }
val adapter = CustomAdapter<SeriesItem?>(activity,
R.layout.spinner_custom, R.layout.spinner_dropdown_item,
dataSeries?.toTypedArray()!!)
spnSeries?.adapter = adapter
}else{
Toast.makeText(context, "Error Series",
Toast.LENGTH_SHORT).show()
}
}
override fun onFailure(call: Call<Series>, throwable: Throwable) {
Toast.makeText(context, "Please check your connection",
Toast.LENGTH_SHORT).show()
}
})
if (spnSeries.getSelectedItem()==null){
Toast.makeText(context, "Nothing selected",
Toast.LENGTH_SHORT).show()
}else{
spnSeries?.onItemSelectedListener = object :
AdapterView.OnItemSelectedListener {
override fun onItemSelected(parentView: AdapterView<*>,
selectedItemView: View, position: Int, id: Long) {
selectedSeries =
dataSeries?.get(position)?.series.toString()
}
override fun onNothingSelected(parentView: AdapterView<*>) {
}
}
}
}
Я ожидаю, что второй счетчик, которыйиспользование API не будет перезагружаться снова