Re: [問題] TabHost 換頁時有辦法指定呼叫某個函式 …

看板AndroidDev作者 (alderis)時間13年前 (2011/09/29 12:15), 編輯推噓0(002)
留言2則, 1人參與, 最新討論串1/1
其實我也遇到這個問題卡住兩天了 主要是在兩個tab頁面間互動時 希望頁面A的作動會在頁面B中進行更動 主要也是listview呈現的部分 先講解我目前的作法 ----- 在建立tabspec時有三種方法,intent或view*2 我們這邊用的應該都是加入intent 在加入intent時,先在intent中設一個flag FLAG_ACTIVITY_CLEAR_TOP 就會讓每次要進入這個tab時都重啟tab中的activity 如果你的listview更新方法有在oncreate中的話 listview就會被更新到了 如下 TabSpec spec_Cart = tabHost.newTabSpec("Cart") .setIndicator("Cart") .setContent(new Intent(this,OrderTabCart.class) .putExtra("OrderId", OrderId) .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)); tabHost.addTab(spec_Cart); 下面再寫一些應該可行但我沒試成功的方法 ---- 1、把listview直接以view的方式放在tabHost中 再以findViewById的方法抓出這個view 在tab轉換時,在OnTabChangeListener中對這個view進行更新動作 2、自已用button作假的tab放著 但會造成在不同tab間切換後,上一個tab的狀態會跑掉的問題 如果不care頁面或狀態跑掉的問題的話,這個方法其實不錯用 也看到不少app上有用這個自已作假tab真button的方法 以上,也算是自問自答 希望需要的人有被幫忙到~ ※ 引述《jimwayne123 (曼陀羅)》之銘言: : 請問在使用 TabActivity 的某個 TabHost 頁面上面觸發點選頁籤的事件時 : 假設該頁籤呼叫的 Activity 是 A : 有沒有辦法在 TabHost 中指定點選到 A 的頁籤就呼叫 A.updateXXX( ) 的函式呢? : (因為有可能在別的頁籤時更新資料庫的資料,所以切回去時 : 希望能把畫面上的資料重讀一次..) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.240.239.191

09/29 15:41, , 1F
再提供一個作法,tab離開時activity會進入pause的狀態
09/29 15:41, 1F

09/29 15:42, , 2F
所以回tab時會先進入onResume(),只要把要作的動作入即可
09/29 15:42, 2F
文章代碼(AID): #1EW_36el (AndroidDev)
文章代碼(AID): #1EW_36el (AndroidDev)