Re: [問題] TabHost 換頁時有辦法指定呼叫某個函式 …
其實我也遇到這個問題卡住兩天了
主要是在兩個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
09/29 15:41, 1F
→
09/29 15:42, , 2F
09/29 15:42, 2F
AndroidDev 近期熱門文章
PTT數位生活區 即時熱門文章