Updated: 21 April 2013
Tested in:
HTC desire S (android 2.3.5)
Base on:
Eclipse Indigo build in 20120216-1857, Java 1.6, Android 4.1.2
Download Source code:
DemoQuickActionListView20130421.rar
Description:
ListView with Quick Action in all items, for many cases (ex: files management, share an item ...)
Screen shot:
Tutorial:
1. Copy all important files to your package in projects, do not forget resources (image, xml files, styles, ...)
2. In your adapter 's getView() function, implement the code below when click button plus:
final ImageButton buttonPlus = (ImageButton) convertView.findViewById(R.id.buttonQuickAction); // Set Quick Action ActionItem itemOption1 = new ActionItem(QUICK_ACTION_OPTION_1, "Option 1", null); ActionItem itemOption2 = new ActionItem(QUICK_ACTION_OPTION_2, "Option 2", null); ActionItem itemDelete = new ActionItem(QUICK_ACTION_DELETE, "Delete", null); final QuickAction mQuickAction = new QuickAction(mContext, QuickAction.HORIZONTAL); mQuickAction.addActionItem(itemOption1); mQuickAction.addActionItem(itemOption2); mQuickAction.addActionItem(itemDelete); mQuickAction.setOnDismissListener(new QuickAction.OnDismissListener() { public void onDismiss() { buttonPlus.setBackgroundResource(R.drawable.plus); } }); mQuickAction.setOnActionItemClickListener(new OnActionItemClickListener() { @Override public void onItemClick(QuickAction source, int pos, int actionId) { buttonPlus.setBackgroundResource(R.drawable.plus); switch (actionId) { case QUICK_ACTION_OPTION_1: Toast.makeText(mContext, "Process Option 1", 3000).show(); break; case QUICK_ACTION_OPTION_2: Toast.makeText(mContext, "Process Option 2", 3000).show(); break; case QUICK_ACTION_DELETE: mCurrentList.remove(p); notifyDataSetChanged(); break; default: break; } } }); if (buttonPlus != null) buttonPlus.setOnClickListener(new OnClickListener() { public void onClick(View v) { v.setBackgroundResource(R.drawable.plus_selected); mQuickAction.show(v); mQuickAction.setAnimStyle(QuickAction.ANIM_AUTO); } });
References:
n/a