Я создаю часть своего приложения, где у меня есть основной вид деятельности, где я добавил два фрагмента. Это два идентичных ScrollViews, куда я просто помещаю
другой текст. Я хочу сделать предпочтение между ними.
Итак, моя идея такова:
У нас есть фрагмент A, который всегда будет отображаться первым, а фрагмент B не виден на экране. Я хотел бы поставить кнопку, чтобы поменять оба фрагмента, когда пользователь захочет.
Итак, как лучше всего развить эту идею? Я публикую код, связанный с моим фрагментом A:
Активность основного фрагмента:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/listaMain">
<fragment android:layout_width="match_parent"
android:layout_height="match_parent"
android:name="com.example.comprasapp.Lists.ListsFragments.ListViewSolo"
android:id="@+id/scrollSoloList"/>
</LinearLayout>
Фрагмент А:
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/scrollSoloList"
android:layout_marginTop="8dp">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/textListaSolo" tools:targetApi="o"/>
</ScrollView>
Фрагмент класса А контроллера:
class ListViewSolo : Fragment(){
var facade = Facade()
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
return inflater.inflate(R.layout.lista_solo, container, true)
}
@RequiresApi(Build.VERSION_CODES.O)
override fun onActivityCreated(savedInstanceState: Bundle?) {
super.onActivityCreated(savedInstanceState)
view?.findViewById<TextView>(R.id.textListaSolo)?.autoSizeMaxTextSize
view?.findViewById<TextView>(R.id.textListaSolo)?.text = (facade.setListSolo())//I'm just setting the text on my TextView here
}
companion object{
// Aqui simplemente estás creando un objeto ListViewSolo por si en algun momento tienes que utilizarlo
fun newInstance(): ListViewSolo {
return ListViewSolo()
}
}
}
Если я могу кое-что прояснить, просто спросите это, спасибо.