很多朋友都用ActivityGroup 來做底部菜單吧~
我也覺得這個控件很好,自由性比tab好很多。但是確實發現了很多問題:
1.子頁面activity的menu不顯示。(子頁面的按鍵監聽無輸出,所以其他按鍵也無效!)
2. 子頁面默認wrap_content佈局,無法設置爲fill_parent!需根據頁面大小動態設置!(這裏參考另一篇:http://androidturing.iteye.com/blog/1258839)
3.子頁面中的ListView的getView()方法被重複調用多次!導致性能下降。(同樣參考:http://androidturing.iteye.com/blog/1258839)
之前第二個問題已經解決,第三個問題是由於第二個問題中 子頁面縱向佈局爲wrap_content而引起的!
今天發現並解決了第一個bug,在activitygroup加上這個:
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
if(keyCode==KeyEvent.KEYCODE_MENU) {
this.getLocalActivityManager().getCurrentActivity().openOptionsMenu();
}else if(keyCode == KeyEvent.KEYCODE_BACK){
finish();//可換用自己的退出提示
}
return super.onKeyDown(keyCode, event);
}