android smartbar适配

生态人

关注

阅读 109

2022-11-28

1.使用魅族的demo里的SmartBarUtils.java 


2.在mainifest中的Application















android:uiOptions="splitActionBarWhenNarrow
"



3.在基类的activity中:



//代表隐藏头部bar



ble(getActionBar(), true);




getActionBar().setDisplayOptions(0);



4.在业务的fragment中:



必须先调用下面的代码,才能是fragment里的menu生效




setHasOptionsMenu(true);







@Override




public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {




inflater.inflate(R.menu.home_menu, menu);




}








@Override




public boolean onOptionsItemSelected(MenuItem item) {




switch (item.getItemId()) {




case R.id.menu_home_page:




new AlertDialog.Builder(mAct).setTitle("Action Menu Item")




.setPositiveButton("Yes", null).setNegativeButton("Cancel", null).show();




break;








default:




break;




}








return super.onOptionsItemSelected(item);




}






魅族的反射工具类:



public class SmartBarUtils {












public static void setActionBarTabsShowAtBo
ttom(ActionBar actionbar, boolean showAtBottom) {




















































} catch (IllegalArgumentException




































} catch (InvocationTargetExceptio
n e) {



















































































public static void setActionBarViewCollapsa
ble(ActionBar actionbar, boolean collapsable) {


























"setActionBarViewCollapsa
ble", new Class[] { boolean.class });


























} catch (IllegalArgumentException




































} catch (InvocationTargetExceptio
n e) {



















































































public static void setActionModeHeaderHidde
n(ActionBar actionbar, boolean hidden) {


























"setActionModeHeaderHidde
n", new Class[] { boolean.class });


























} catch (IllegalArgumentException




































} catch (InvocationTargetExceptio
n e) {

精彩评论(0)

0 0 举报