private void onApplicationModePress(View v) { final QuickAction mQuickAction = new QuickAction(v); mQuickAction.setOnAnchorOnTop(true); List<ApplicationMode> vls = ApplicationMode.values(mapActivity.getMyApplication().getSettings()); final ApplicationMode[] modes = vls.toArray(new ApplicationMode[vls.size()]); Drawable[] icons = new Drawable[vls.size()]; int[] values = new int[vls.size()]; for (int k = 0; k < modes.length; k++) { icons[k] = app.getIconsCache().getIcon(modes[k].getSmallIconDark(), R.color.icon_color); values[k] = modes[k].getStringResource(); } for (int i = 0; i < modes.length; i++) { final ActionItem action = new ActionItem(); action.setTitle(mapActivity.getResources().getString(values[i])); action.setIcon(icons[i]); final int j = i; action.setOnClickListener( new OnClickListener() { @Override public void onClick(View v) { mapActivity.getMyApplication().getSettings().APPLICATION_MODE.set(modes[j]); mQuickAction.dismiss(); } }); mQuickAction.addActionItem(action); } mQuickAction.setAnimStyle(QuickAction.ANIM_AUTO); mQuickAction.show(); }
private QuickAction prepareDirAction(final SeafDirent dirent) { final QuickAction mQuickAction = new QuickAction(mActivity); Resources resources = mActivity.getResources(); ActionItem shareAction; shareAction = new ActionItem( ACTION_ID_SHARE, resources.getString(R.string.file_action_share), resources.getDrawable(R.drawable.action_share)); mQuickAction.addActionItem(shareAction); // setup the action item click listener mQuickAction.setOnActionItemClickListener( new QuickAction.OnActionItemClickListener() { @Override public void onItemClick(QuickAction quickAction, int pos, int actionId) { NavContext nav = mActivity.getNavContext(); String repoName = nav.getRepoName(); String repoID = nav.getRepoID(); String dir = nav.getDirPath(); String path = Utils.pathJoin(dir, dirent.name); switch (actionId) { case ACTION_ID_SHARE: mActivity.shareDir(repoID, path); break; } } }); mQuickAction.mAnimateTrack(false); return mQuickAction; }
private void onApplicationModePress() { final QuickAction mQuickAction = new QuickAction(backToMenuButton); int[] icons = new int[] { R.drawable.default_mode_small, R.drawable.car_small, R.drawable.bicycle_small, R.drawable.pedestrian_small }; int[] values = new int[] { R.string.app_mode_default, R.string.app_mode_car, R.string.app_mode_bicycle, R.string.app_mode_pedestrian }; final ApplicationMode[] modes = new ApplicationMode[] { ApplicationMode.DEFAULT, ApplicationMode.CAR, ApplicationMode.BICYCLE, ApplicationMode.PEDESTRIAN }; for (int i = 0; i < 4; i++) { final ActionItem action = new ActionItem(); action.setTitle(view.getResources().getString(values[i])); action.setIcon(view.getResources().getDrawable(icons[i])); final int j = i; action.setOnClickListener( new OnClickListener() { @Override public void onClick(View v) { view.getSettings().APPLICATION_MODE.set(modes[j]); activity.updateApplicationModeSettings(); view.refreshMap(true); mQuickAction.dismiss(); } }); mQuickAction.addActionItem(action); } mQuickAction.setAnimStyle(QuickAction.ANIM_AUTO); mQuickAction.show(); }
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); ActionItem nextItem = new ActionItem(ID_DOWN, "Next", getResources().getDrawable(R.drawable.menu_down_arrow)); ActionItem prevItem = new ActionItem(ID_UP, "Prev", getResources().getDrawable(R.drawable.menu_up_arrow)); ActionItem searchItem = new ActionItem(ID_SEARCH, "Find", getResources().getDrawable(R.drawable.menu_search)); ActionItem infoItem = new ActionItem(ID_INFO, "Info", getResources().getDrawable(R.drawable.menu_info)); ActionItem eraseItem = new ActionItem(ID_ERASE, "Clear", getResources().getDrawable(R.drawable.menu_eraser)); ActionItem okItem = new ActionItem(ID_OK, "OK", getResources().getDrawable(R.drawable.menu_ok)); // use setSticky(true) to disable QuickAction dialog being dismissed after an item is clicked prevItem.setSticky(true); nextItem.setSticky(true); // create QuickAction. Use QuickAction.VERTICAL or QuickAction.HORIZONTAL param to define layout // orientation final QuickAction quickAction = new QuickAction(this, QuickAction.VERTICAL); // add action items into QuickAction quickAction.addActionItem(nextItem); quickAction.addActionItem(prevItem); quickAction.addActionItem(searchItem); quickAction.addActionItem(infoItem); quickAction.addActionItem(eraseItem); quickAction.addActionItem(okItem); // Set listener for action item clicked quickAction.setOnActionItemClickListener( new QuickAction.OnActionItemClickListener() { // @Override public void onItemClick(QuickAction source, int pos, int actionId) { ActionItem actionItem = quickAction.getActionItem(pos); // here we can filter which action item was clicked with pos or actionId parameter if (actionId == ID_SEARCH) { Toast.makeText( getApplicationContext(), "Let's do some search action", Toast.LENGTH_SHORT) .show(); } else if (actionId == ID_INFO) { Toast.makeText( getApplicationContext(), "I have no info this time", Toast.LENGTH_SHORT) .show(); } else { Toast.makeText( getApplicationContext(), actionItem.getTitle() + " selected", Toast.LENGTH_SHORT) .show(); } } }); // set listnener for on dismiss event, this listener will be called only if QuickAction dialog // was dismissed // by clicking the area outside the dialog. quickAction.setOnDismissListener( new QuickAction.OnDismissListener() { // @Override public void onDismiss() { Toast.makeText(getApplicationContext(), "Dismissed", Toast.LENGTH_SHORT).show(); } }); // show on btn1 Button btn1 = (Button) this.findViewById(R.id.btn1); btn1.setOnClickListener( new View.OnClickListener() { // @Override public void onClick(View v) { // quickAction.show(v); } }); Button btn2 = (Button) this.findViewById(R.id.btn2); btn2.setOnClickListener( new OnClickListener() { // @Override public void onClick(View v) { // quickAction.show(v); } }); Button btn3 = (Button) this.findViewById(R.id.btn3); btn3.setOnClickListener( new OnClickListener() { // @Override public void onClick(View v) { // quickAction.show(v); quickAction.setAnimStyle(QuickAction.ANIM_REFLECT); } }); }
private void initViews() { tvSelect = (TextView) findViewById(R.id.tv_select); // ivRecommend = (ImageView)findViewById(R.id.iv_recommend); Drawable recommend = getResources().getDrawable(R.drawable.recommend); /*Bitmap bitmap = ((BitmapDrawable)tmp).getBitmap(); Drawable recommend = new BitmapDrawable(getResources(), Bitmap.createScaledBitmap(bitmap, 35, 35, true));*/ ActionItem commentItem = new ActionItem(FLAG_RECOMMEND, "熱門推薦", recommend); ActionItem firstItem = new ActionItem(FLAG_HOT, "依播放次數"); ActionItem secondItem = new ActionItem(FLAG_NEW, "依上架時間"); ActionItem thisweekItem = new ActionItem(FLAG_2013, "2013年"); ActionItem recentItem = new ActionItem(FLAG_2012, "2012年"); ActionItem topItem = new ActionItem(FLAG_BEFORE, "2011年以前"); quickAction = new QuickAction(this, QuickAction.VERTICAL); // add action items into QuickAction quickAction.addActionItem(commentItem); quickAction.addActionItem(firstItem); quickAction.addActionItem(secondItem); quickAction.addActionItem(thisweekItem); quickAction.addActionItem(recentItem); quickAction.addActionItem(topItem); // Set listener for action item clicked quickAction.setOnActionItemClickListener( new QuickAction.OnActionItemClickListener() { public void onItemClick(QuickAction source, int pos, int actionId) { quickAction.getActionItem(pos); setActionText(actionId); sortDataTask = new SortDataTask(); if (Build.VERSION.SDK_INT < 11) sortDataTask.execute(); else sortDataTask.executeOnExecutor(LoadDataTask.THREAD_POOL_EXECUTOR, 0); } }); // set listnener for on dismiss event, this listener will be called only if QuickAction dialog // was dismissed // by clicking the area outside the dialog. quickAction.setOnDismissListener( new QuickAction.OnDismissListener() { public void onDismiss() { // Toast.makeText(getApplicationContext(), "Dismissed", Toast.LENGTH_SHORT).show(); } }); llSelect = (LinearLayout) findViewById(R.id.ll_select); llSelect.setOnClickListener( new OnClickListener() { public void onClick(View v) { quickAction.show(v); } }); topbar_text = (TextView) findViewById(R.id.topbar_text); topbar_text.setText(getResources().getString(R.string.app_name)); DisplayMetrics dm = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(dm); cursorWidth = dm.widthPixels / listnumber - cursorOffset * 2; LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(cursorWidth, 15); lp.setMargins(cursorOffset, 0, cursorOffset, 0); cursor = (ImageView) findViewById(R.id.arrow_1); cursor.setLayoutParams(lp); buttonTaiwan = (Button) findViewById(R.id.button_drama_taiwan); buttonKoera = (Button) findViewById(R.id.button_drama_koera); buttonJapan = (Button) findViewById(R.id.button_drama_japan); buttonChina = (Button) findViewById(R.id.button_drama_china); viewpager = (ViewPager) findViewById(R.id.viewpager_tvchannel); viewpager.setOffscreenPageLimit(listnumber); imageButtonRefresh = (ImageButton) findViewById(R.id.refresh); imageButtonRefresh.setOnClickListener( new OnClickListener() { public void onClick(View arg0) { updatetask = new updateDataTask(); if (Build.VERSION.SDK_INT < 11) updatetask.execute(); else updatetask.executeOnExecutor(updateDataTask.THREAD_POOL_EXECUTOR, 0); } }); }
public void addItem(String s, int i, int j, int k) { mQuickActions.addActionItem(new ActionItem(j, s)); }
private QuickAction prepareFileAction(final SeafDirent dirent, boolean cacheExists) { final QuickAction mQuickAction = new QuickAction(mActivity); Resources resources = mActivity.getResources(); ActionItem shareAction, downloadAction, updateAction, exportAction, renameAction, deleteAction; shareAction = new ActionItem( ACTION_ID_SHARE, resources.getString(R.string.file_action_share), resources.getDrawable(R.drawable.action_share)); mQuickAction.addActionItem(shareAction); // deleteAction = new ActionItem(ACTION_ID_DELETE, // resources.getString(R.string.file_action_delete), // resources.getDrawable(R.drawable.action_delete)); // mQuickAction.addActionItem(deleteAction); renameAction = new ActionItem( ACTION_ID_RENAME, resources.getString(R.string.file_action_rename), resources.getDrawable(R.drawable.action_rename)); mQuickAction.addActionItem(renameAction); exportAction = new ActionItem( ACTION_ID_EXPORT, resources.getString(R.string.file_action_export), resources.getDrawable(R.drawable.action_export)); mQuickAction.addActionItem(exportAction); if (cacheExists) { if (mActivity.hasRepoWritePermission()) { updateAction = new ActionItem( ACTION_ID_UPDATE, resources.getString(R.string.file_action_update), resources.getDrawable(R.drawable.action_update)); mQuickAction.addActionItem(updateAction); } } else { downloadAction = new ActionItem( ACTION_ID_DOWNLOAD, resources.getString(R.string.file_action_download), resources.getDrawable(R.drawable.action_download)); mQuickAction.addActionItem(downloadAction); } // setup the action item click listener mQuickAction.setOnActionItemClickListener( new QuickAction.OnActionItemClickListener() { @Override public void onItemClick(QuickAction quickAction, int pos, int actionId) { NavContext nav = mActivity.getNavContext(); String repoName = nav.getRepoName(); String repoID = nav.getRepoID(); String dir = nav.getDirPath(); String path = Utils.pathJoin(dir, dirent.name); DataManager dataManager = mActivity.getDataManager(); String localPath = dataManager.getLocalRepoFile(repoName, repoID, path).getPath(); switch (actionId) { case ACTION_ID_SHARE: mActivity.shareFile(repoID, path); break; case ACTION_ID_EXPORT: mActivity.exportFile(dirent.name); break; case ACTION_ID_DOWNLOAD: mActivity.onFileSelected(dirent); break; case ACTION_ID_UPDATE: mActivity.addUpdateTask(repoID, repoName, dir, localPath); break; case ACTION_ID_RENAME: mActivity.renameFile(repoID, repoName, path); break; } } }); mQuickAction.mAnimateTrack(false); return mQuickAction; }
/** * Shows the context menu using the given region as an anchor point. * * @param displayRect */ protected void showContextMenu(Rect displayRect) { // Don't show this twice if (mContextMenuVisible) { return; } // Don't use empty rect // if(displayRect.isEmpty()){ if (displayRect.right <= displayRect.left) { return; } // Copy action item ActionItem buttonOne = new ActionItem(); buttonOne.setTitle("Button 1"); buttonOne.setActionId(1); buttonOne.setIcon(getResources().getDrawable(R.drawable.menu_search)); // Highlight action item ActionItem buttonTwo = new ActionItem(); buttonTwo.setTitle("Button 2"); buttonTwo.setActionId(2); buttonTwo.setIcon(getResources().getDrawable(R.drawable.menu_info)); ActionItem buttonThree = new ActionItem(); buttonThree.setTitle("Button 3"); buttonThree.setActionId(3); buttonThree.setIcon(getResources().getDrawable(R.drawable.menu_eraser)); // The action menu mContextMenu = new QuickAction(getContext()); mContextMenu.setOnDismissListener(this); // Add buttons mContextMenu.addActionItem(buttonOne); mContextMenu.addActionItem(buttonTwo); mContextMenu.addActionItem(buttonThree); // setup the action item click listener mContextMenu.setOnActionItemClickListener( new QuickAction.OnActionItemClickListener() { @Override public void onItemClick(QuickAction source, int pos, int actionId) { // TODO Auto-generated method stub if (actionId == 1) { // Do Button 1 stuff Log.i(TAG, "Hit Button 1"); } else if (actionId == 2) { // Do Button 2 stuff Log.i(TAG, "Hit Button 2"); } else if (actionId == 3) { // Do Button 3 stuff Log.i(TAG, "Hit Button 3"); } mContextMenuVisible = false; } }); mContextMenuVisible = true; mContextMenu.show(this, displayRect); }