我有一個片段,HomeFragment()。在這個片段中,我TabLayout使用了ViewPager2. 在viewPager2那里還有另一個片段叫做ordersFragment(). 我是否可以單擊放置在其中的任何按鈕HomeFragment()并在 ordersFragment()` 中顯示一些文本?
uj5u.com熱心網友回復:
我真的建議使用現代方法,即ViewModelscomponent。視圖模型基本上是一個保存您的資料和狀態的類,該組件使您的活動中的每個片段都能夠獲取相同的視圖模型實體,因此它們都在查看相同的內容
這樣,一個片段可以為一些資料設定一個值,而另一個片段可以設定observe它并在有更新時得到通知。兩個片段都不需要相互了解,它們只是與視圖模型交談并觀察他們需要擔心的事情。檔案中有這種事情的例子
您可以自己協調所有這些東西(例如,通過父級Activity并與另一個片段進行對話),但是您正在添加大量作業和樣板,這些作業和樣板會ViewModel為您處理。它可以幫助您將 UI(顯示內容、處理用戶互動)與業務邏輯(使用該資料做一些事情、更新應用程式狀態)分開。知道這絕對是件好事,并且可以更輕松地圍繞您的應用進行交流
uj5u.com熱心網友回復:
最佳實踐是使用在一個片段中實作的回呼并在另一個片段中呼叫它。
如果您使用的是 kotlin,請檢查這個..
鏈接 (我不想在這里復制粘貼相同的代碼)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/343320.html
