use of com.actionbarsherlock.view.MenuItem in project ActionBarSherlock by JakeWharton.
the class ActionMenu method addIntentOptions.
public int addIntentOptions(int groupId, int itemId, int order, ComponentName caller, Intent[] specifics, Intent intent, int flags, MenuItem[] outSpecificItems) {
PackageManager pm = mContext.getPackageManager();
final List<ResolveInfo> lri = pm.queryIntentActivityOptions(caller, specifics, intent, 0);
final int N = lri != null ? lri.size() : 0;
if ((flags & FLAG_APPEND_TO_GROUP) == 0) {
removeGroup(groupId);
}
for (int i = 0; i < N; i++) {
final ResolveInfo ri = lri.get(i);
Intent rintent = new Intent(ri.specificIndex < 0 ? intent : specifics[ri.specificIndex]);
rintent.setComponent(new ComponentName(ri.activityInfo.applicationInfo.packageName, ri.activityInfo.name));
final MenuItem item = add(groupId, itemId, order, ri.loadLabel(pm)).setIcon(ri.loadIcon(pm)).setIntent(rintent);
if (outSpecificItems != null && ri.specificIndex >= 0) {
outSpecificItems[ri.specificIndex] = item;
}
}
return N;
}
use of com.actionbarsherlock.view.MenuItem in project ActionBarSherlock by JakeWharton.
the class ActionBarSherlockNative method dispatchOptionsItemSelected.
@Override
public boolean dispatchOptionsItemSelected(android.view.MenuItem item) {
if (ActionBarSherlock.DEBUG)
Log.d(TAG, "[dispatchOptionsItemSelected] item: " + item.getTitleCondensed());
MenuItem wrapped;
if (mMenu == null) {
if (item.getItemId() != android.R.id.home) {
throw new IllegalStateException("Non-home action item clicked before onCreateOptionsMenu with ID " + item.getItemId());
}
// Create a throw-away wrapper for now.
wrapped = new MenuItemWrapper(item);
} else {
wrapped = mMenu.findItem(item);
}
final boolean result = callbackOptionsItemSelected(wrapped);
if (ActionBarSherlock.DEBUG)
Log.d(TAG, "[dispatchOptionsItemSelected] returning " + result);
return result;
}
use of com.actionbarsherlock.view.MenuItem in project ActionBarSherlock by JakeWharton.
the class MainActivity method onCreateOptionsMenu.
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getSupportMenuInflater().inflate(R.menu.main_menu, menu);
// set up a listener for the refresh item
final MenuItem refresh = (MenuItem) menu.findItem(R.id.menu_refresh);
refresh.setOnMenuItemClickListener(new OnMenuItemClickListener() {
// on selecting show progress spinner for 1s
public boolean onMenuItemClick(MenuItem item) {
// item.setActionView(R.layout.progress_action);
handler.postDelayed(new Runnable() {
public void run() {
refresh.setActionView(null);
}
}, 1000);
return false;
}
});
return super.onCreateOptionsMenu(menu);
}
use of com.actionbarsherlock.view.MenuItem in project ActionBarSherlock by JakeWharton.
the class ShareActionProviders method onCreateOptionsMenu.
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate your menu.
getSupportMenuInflater().inflate(R.menu.share_action_provider, menu);
// Set file with share history to the provider and set the share intent.
MenuItem actionItem = menu.findItem(R.id.menu_item_share_action_provider_action_bar);
ShareActionProvider actionProvider = (ShareActionProvider) actionItem.getActionProvider();
actionProvider.setShareHistoryFileName(ShareActionProvider.DEFAULT_SHARE_HISTORY_FILE_NAME);
// Note that you can set/change the intent any time,
// say when the user has selected an image.
actionProvider.setShareIntent(createShareIntent());
return true;
}
use of com.actionbarsherlock.view.MenuItem in project mobile-android by photo.
the class CommonRefreshableFragment method reinitMenu.
protected void reinitMenu(Menu menu) {
try {
MenuItem refreshItem = menu.findItem(R.id.menu_refresh);
refreshItem.setVisible(isRefreshMenuVisible());
} catch (Exception ex) {
GuiUtils.noAlertError(TAG, ex);
try {
TrackerUtils.trackErrorEvent("#409 situation", CommonUtils.format("isAdded: %1$b; isDetached: %2$b; " + "isHidden: %3$b; isRemoving: %4$b; " + "isVisible: %1$b", isAdded(), isDetached(), isHidden(), isRemoving(), isVisible()));
} catch (Exception ex2) {
GuiUtils.noAlertError(TAG, ex2);
TrackerUtils.trackErrorEvent("#409 situation", "additinal details error");
}
}
}
Aggregations