У меня есть действие с макетом с вкладками, содержащим несколько разных вкладок. Каждая вкладка содержит несколько полей 'edittext'. У меня есть кнопка на основной деятельности и, нажав на нее, я хочу сохранить содержимое каждого поля edittext из каждой вкладки. В настоящее время я могу вернуть обычное значение из вкладки, но не могу получить содержимое поля edittext.
Я попытался создать 'lateinit var frag1_tenNo: EditText' внутри класса фрагмента для вкладки. Я инициализировал его в onCreateView, но программа выдает сообщение о том, что 'свойство lateinit frag1_tenNo не было инициализировано'
фрагмент кода
class frag1: Fragment() {
lateinit var frag1_tenNo : EditText
override public fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
val viewFrag1 = inflater.inflate(R.layout.frag1, container, false)
frag1_tenNo = viewFrag1.findViewById(R.id.survey_tenantNo)
return viewFrag1
}
fun saveFrag1Data(): String {
var data1 = frag1_tenNo.text.toString()
return data1
}
код активности - для извлечения данных
save_btn.setOnClickListener {
Log.d("Survey","Change Button Clicked")
val test = frag1().saveFrag1Data()
Log.d("Survey","Returned value : $test")
}