public void CloseMenu() { mSetupMenuLanyout.setFocusable(false); mSetupMenuLanyout.setFocusableInTouchMode(false); mSetupMenuLanyout.setVisibility(View.INVISIBLE); mOpen = false; SendMsgToAndroid.sendShowWorkspaceMsg(); }
public SetupMenu(Context context) { mContext = context; mInstance = this; if (DefaultLayout.popmenu_style == POPMENU_STYLE_ANDROID4) { SETUPMENU_FOLDERNAME = SETUPMENU_ANDROID4_FOLDERNAME; BITMAPCELLHEIGHT = 48; } else { SETUPMENU_FOLDERNAME = SETUPMENU_ORIGINAL_FOLDERNAME; BITMAPCELLHEIGHT = 67; } SETUPMENU_BG_CLOLOR = SETUPMENU_FOLDERNAME + "bg.png"; SetupMenuActions.getInstance().init(context); // Utils3D.showPidMemoryInfo("setupmenu0"); // wanghongjian add start //enable_DefaultScene if (FeatureConfig.enable_DefaultScene) { int size = getSceneMenu("com.cooee.scene"); // 判断手机里是否有场景桌面 if (size > 0) { DefaultLayout.scene_menu_style = true; } } // wanghongjian add end Utils3D.showTimeFromStart("before load"); LoadSetupMenuXml(); Utils3D.showTimeFromStart("after load"); DisplayMetrics displayMetrics = mContext.getResources().getDisplayMetrics(); mWidth = displayMetrics.widthPixels; mHeight = displayMetrics.heightPixels; mScreenScale = displayMetrics.density; mScale = mScreenScale / BITMAPSCALE; mCellWidth = mWidth / mcolumns; // Tools.dip2px(mContext, // BITMAPCELLWIDTH);// 3; // mCellHeight = Tools.dip2px(mContext, BITMAPCELLHEIGHT); mTabCellWidth = (int) (((float) mWidth / (mTabMenus.size() > 0 ? mTabMenus.size() : 1)) + 0.999); mSetupMenuLanyout = new SetMenuDesktop(context); mSetupMenuLanyout.setSetupMenu(this); mSetupMenuLanyout.setMenuItems(mTabMenus, mMenuItems); mSetupMenuLanyout.LoadLayout(); mSetupMenuLanyout.setFocusable(true); mSetupMenuLanyout.setFocusableInTouchMode(true); mSetupMenuLanyout.setOnClickListener( new android.view.View.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub } }); if (DefaultLayout.popmenu_style == POPMENU_STYLE_ANDROID4) { float horMargin = mWidth / 15f; mSetupMenuLanyout.setPadding((int) horMargin, 0, (int) horMargin, 0); } FrameLayout.LayoutParams popwinlp = new FrameLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT); ((iLoongLauncher) context).addContentView(mSetupMenuLanyout, popwinlp); mSetupMenuLanyout.setVisibility(View.INVISIBLE); }
public void PopSetupMenu(/* final View anchor */ ) { if (mOpen) return; SendMsgToAndroid.sendHideWorkspaceMsg(); mOpen = true; mSetupMenuLanyout.setVisibility(View.VISIBLE); mSetupMenuLanyout.setFocusable(true); mSetupMenuLanyout.setFocusableInTouchMode(true); mSetupMenuLanyout.requestFocus(); mSetupMenuLanyout.Load(); // p = new PopupWindow(mSetupMenuLanyout, mWidth, mHeight, true); // p.showAtLocation(anchor, Gravity.BOTTOM | Gravity.CENTER, 0, 0); // p.setOnDismissListener(new PopupWindow.OnDismissListener() { // public void onDismiss() { // dismissSetupMenu(anchor); // } // }); // anchor.setTag(p); // mSetupMenuLanyout.Load(); }
public void Release() { mSetupMenuLanyout.Release(); Iterator<ArrayList<SetupMenuItem>> it = mMenuItems.values().iterator(); while (it.hasNext()) { ArrayList<SetupMenuItem> menuitems = it.next(); for (int i = 0; i < menuitems.size(); i++) { if (menuitems.get(i).iconbmp != null) menuitems.get(i).iconbmp.recycle(); if (menuitems.get(i).icon2bmp != null) menuitems.get(i).icon2bmp.recycle(); } } System.gc(); }