android.view.MenuItem#setActionView ( )源码实例Demo

下面列出了android.view.MenuItem#setActionView ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: NaviBee   文件: CreateGroupChatActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.menu_confirm, menu);
    ProgressBar pb = new ProgressBar(this);
    MenuItem progressItem = menu.findItem(R.id.menu_confirm_progress);
    int px = (int) (24 * Resources.getSystem().getDisplayMetrics().density);
    LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(3*px, 3*px);
    pb.setLayoutParams(lp);
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
        pb.setIndeterminateTintList(
            ColorStateList.valueOf(0xff000000)
        );
    }
    pb.setPaddingRelative(px, px, px, px);
    progressItem.setActionView(pb);
    return true;
}
 
/**
 * Set the state of the Refresh button. If a sync is active, turn on the ProgressBar widget.
 * Otherwise, turn it off.
 *
 * @param refreshing True if an active sync is occuring, false otherwise
 */
@TargetApi(Build.VERSION_CODES.HONEYCOMB)
public void setRefreshActionButtonState(boolean refreshing) {
    if (mOptionsMenu == null || Build.VERSION.SDK_INT < Build.VERSION_CODES.HONEYCOMB) {
        return;
    }

    final MenuItem refreshItem = mOptionsMenu.findItem(R.id.menu_refresh);
    if (refreshItem != null) {
        if (refreshing) {
            refreshItem.setActionView(R.layout.actionbar_indeterminate_progress);
        } else {
            refreshItem.setActionView(null);
        }
    }
}
 
源代码3 项目: catnut   文件: TimelineFragment.java
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
	menu.add(Menu.NONE, R.id.refresh, Menu.NONE, R.string.refresh)
			.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER); // prefer actionbar refresh
	menu.add(Menu.NONE, R.id.action_back_top, Menu.NONE, getString(R.string.back_to_top))
			.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER);
	// 本地微博搜索
	MenuItem search = menu.add(android.R.string.search_go);
	search.setIcon(R.drawable.ic_title_search_default);
	search.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM
			| MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);
	mSearchView = VividSearchView.getSearchView(getActivity());
	mSearchView.setOnQueryTextListener(this);
	mSearchView.setOnCloseListener(this);
	search.setActionView(mSearchView);
}
 
@TargetApi(Build.VERSION_CODES.HONEYCOMB)
private void addAnimationToMenuItem(MenuItem menuItem, @LayoutRes int layoutResource,
                                    @AnimRes int animationId) {
    LayoutInflater inflater = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    ImageView iv = (ImageView)inflater.inflate(layoutResource, null);
    Animation animation = AnimationUtils.loadAnimation(this, animationId);
    iv.startAnimation(animation);
    menuItem.setActionView(iv);
}
 
源代码5 项目: easyble-x   文件: ScanActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.scan, menu);
    MenuItem item = menu.findItem(R.id.menuProgress);
    item.setActionView(R.layout.toolbar_indeterminate_progress);
    item.setVisible(EasyBLE.getInstance().isScanning());
    return super.onCreateOptionsMenu(menu);
}
 
源代码6 项目: Klyph   文件: ProfileActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
	if (isLoading)
	{
		MenuItem refreshItem = menu.add(Menu.NONE, R.id.menu_refresh, 1, R.string.refresh);
		refreshItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
		refreshItem.setActionView(R.layout.actionbar_item_refresh);
	}

	return super.onCreateOptionsMenu(menu);
}
 
源代码7 项目: AIMSICDL   文件: MapFragment.java
public void setRefreshActionButtonState(final boolean refreshing) {
    if (mOptionsMenu != null) {
        final MenuItem refreshItem = mOptionsMenu.findItem(R.id.get_opencellid);
        if (refreshItem != null) {
            if (refreshing) {
                refreshItem.setActionView(R.layout.actionbar_indeterminate_progress);
            } else {
                refreshItem.setActionView(null);
            }
        }
    }
}
 
@Override
public boolean onCreateOptionsMenu(Menu menu) {

    getMenuInflater().inflate(R.menu.activity_edit_camera_location, menu);

    MenuItem supportMenuItem = menu.findItem(R.id.menu_action_support);
    if (supportMenuItem != null) {
        LinearLayout menuLayout = (LinearLayout) LayoutInflater.from(this)
                .inflate(R.layout.edit_location_menu_item, null);
        supportMenuItem.setActionView(menuLayout);
        supportMenuItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);

        menuLayout.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                PatchCameraBuilder patchCameraBuilder = buildPatchCameraWithLocalCheck();
                if (patchCameraBuilder != null) {
                    new PatchCameraTask(patchCameraBuilder.build(),
                            EditCameraLocationActivity.this).executeOnExecutor(AsyncTask
                            .THREAD_POOL_EXECUTOR);
                } else {
                    Log.e("Log", "Camera to patch is null");
                }
            }
        });
    }
    return true;
}
 
源代码9 项目: open   文件: ShadowSupportMenuInflater.java
private void addActionViewToItem(MenuItem item, RoboAttributeSet attributes) {
    String actionViewClassName = attributes.getAttributeValue(APP_NS, "actionViewClass");
    if (actionViewClassName != null) {
        try {
            View actionView = (View) Class.forName(actionViewClassName)
                    .getConstructor(Context.class)
                    .newInstance(context);
            item.setActionView(actionView);
        } catch (Exception e) {
            throw new RuntimeException("Action View class not found!", e);
        }
    }
}
 
@TargetApi(Build.VERSION_CODES.HONEYCOMB)
private void clearCurrentAnimation(MenuItem item) {
    if (item != null && item.getActionView() != null) {
        item.getActionView().clearAnimation();
        item.setActionView(null);
    }
}
 
源代码11 项目: android_gisapp   文件: MainActivity.java
public synchronized void onRefresh(boolean isRefresh) {
    MenuItem refreshItem = mToolbar.getMenu().findItem(R.id.menu_refresh);
    if (null != refreshItem) {
        if (isRefresh) {
            if (refreshItem.getActionView() == null) {
                refreshItem.setActionView(R.layout.layout_refresh);
                ProgressBar progress = (ProgressBar) refreshItem.getActionView().findViewById(R.id.refreshingProgress);
                if (progress != null)
                    progress.getIndeterminateDrawable().setColorFilter(ContextCompat.getColor(this, R.color.color_grey_200), PorterDuff.Mode.SRC_IN);
            }
        } else
            stopRefresh(refreshItem);
    }
}
 
源代码12 项目: UltimateAndroid   文件: MotionSampleActivity.java
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
    super.onCreateOptionsMenu(menu, inflater);
    inflater.inflate(R.menu.motion_parallax, menu);

    // Add parallax toggle
    final Switch mParallaxToggle = new Switch(getActivity());
    mParallaxToggle.setPadding(0, 0, (int)TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 12, getResources().getDisplayMetrics()), 0);
    mParallaxToggle.setChecked(mParallaxSet);
    mParallaxToggle.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
        @Override
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            if (isChecked) {
                mBackground.registerSensorManager();
            } else {
                mBackground.unregisterSensorManager();
            }

            mParallaxSet = isChecked;
        }
    });
    MenuItem switchItem = menu.findItem(R.id.action_parallax);
    if (switchItem != null)
        switchItem.setActionView(mParallaxToggle);

    // Set lock/ unlock orientation text
    if (mPortraitLock) {
        getActivity().setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
        MenuItem orientationItem = menu.findItem(R.id.action_portrait);
        if (orientationItem != null)
            orientationItem.setTitle("action_unlock_portrait");
    }
}
 
源代码13 项目: Kandroid   文件: TaskEditActivity.java
@Override
public boolean onOptionsItemSelected(MenuItem item) {
    int id = item.getItemId();
    switch (id) {
        case android.R.id.home:
            onBackPressed();
            return true;
        case R.id.action_save:
            ownerId = spinnerProjectUsers.getSelectedItemPosition();
            if (spinnerProjectUsers.getSelectedItemPosition() != 0) {
                for (Enumeration<Integer> iter = projectUsers.keys(); iter.hasMoreElements();) {
                    Integer key = iter.nextElement();
                    if (projectUsers.get(key).contentEquals((String) spinnerProjectUsers.getSelectedItem())) {
                        ownerId = key;
                        break;
                    }
                }
            }
            if (isNewTask) {
                kanboardAPI.createTask(editTextTitle.getText().toString(), projectid, colorId != null ? colorId : defaultColor, columnId, ownerId, null, dueDate, editTextDescription.getText().toString(), null, null, swimlaneId, null, null, null, null, null, null, null, startDate);

            } else {
                kanboardAPI.updateTask(task.getId(), editTextTitle.getText().toString(), colorId != null ? colorId : defaultColor, ownerId, dueDate, editTextDescription.getText().toString(), null, null, null, null, null, null, null, null, null, startDate);
            }
            ProgressBar prog = new ProgressBar(TaskEditActivity.this);
            prog.getIndeterminateDrawable().setColorFilter(Color.WHITE, android.graphics.PorterDuff.Mode.MULTIPLY);
            item.setActionView(prog);
            item.expandActionView();
            return true;
        default:
            return super.onOptionsItemSelected(item);
    }
}
 
源代码14 项目: AnkiDroid-Wear   文件: SettingsActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    menu.clear();
    super.onCreateOptionsMenu(menu);
    //inflate a menu which shows the non-animated refresh icon
    getMenuInflater().inflate(R.menu.menu_settings, menu);

    if(rotation == null){
        rotation = AnimationUtils.loadAnimation(this, R.anim.refresh_animation);
        rotation.setRepeatCount(Animation.INFINITE);
    }

    MenuItem item = menu.findItem(R.id.sendIcon);
    item.setActionView(R.layout.action_bar_indeterminate_progress);
    sendingIndicator = (ImageView) item.getActionView().findViewById(R.id.loadingImageView);
    if (isRefreshing) {
        rotation.setRepeatCount(Animation.INFINITE);
        sendingIndicator.startAnimation(rotation);
    }
        if(rotation != null)rotation.setRepeatCount(0);
        item.getActionView().setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if(!isRefreshing) {
                    sendPreferencesToWatch();
                    isRefreshing = true;
                    rotation.setRepeatCount(Animation.INFINITE);
                    sendingIndicator.startAnimation(rotation);
                }
            }
        });


    return true;
}
 
源代码15 项目: android_gisapp   文件: MainActivity.java
protected void stopRefresh(final MenuItem refreshItem) {
    Handler handler = new Handler(Looper.getMainLooper());
    final Runnable r = new Runnable() {
        public void run() {
            if (refreshItem != null && refreshItem.getActionView() != null) {
                refreshItem.getActionView().clearAnimation();
                refreshItem.setActionView(null);
            }
        }
    };
    handler.post(r);
}
 
源代码16 项目: v2ex   文件: FeedDetailActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    super.onCreateOptionsMenu(menu);
    getMenuInflater().inflate(R.menu.feeds, menu);

    MenuItem refreshMenu = menu.findItem(R.id.menu_refresh);
    if (isRefreshing()) {
        refreshMenu.setVisible(true);
        refreshMenu.setActionView(R.layout.progress_bar);
    }

    return true;
}
 
源代码17 项目: guideshow   文件: MenuItemCompatHoneycomb.java
public static MenuItem setActionView(MenuItem item, int resId) {
    return item.setActionView(resId);
}
 
源代码18 项目: Klyph   文件: MainActivity.java
public boolean onCreateOptionsMenu(Menu menu)
{
	if (notificationsFragment != null && menu.findItem(R.id.menu_notifications) == null)
	{
		final MenuItem notificationItem = menu.add(Menu.NONE, R.id.menu_notifications, 2, R.string.menu_notifications);
		notificationItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
		notificationItem.setActionView(R.layout.actionbar_item_notifications);

		final TextView notificationTextView = (TextView) notificationItem.getActionView().findViewById(R.id.textView);

		int count = notificationsFragment.getUnreadCount();

		notificationTextView.setText(String.valueOf(count));

		if (count > 0)
		{
			notificationTextView.setBackgroundResource(AttrUtil.getResourceId(this, R.attr.notificationsItemBackground));
		}
		else
		{
			notificationTextView.setBackgroundResource(R.drawable.notifications_read_background);

		}

		notificationItem.getActionView().setOnClickListener(new View.OnClickListener() {

			@Override
			public void onClick(View v)
			{
				onOptionsItemSelected(notificationItem);
			}
		});
	}

	if (!KlyphFlags.IS_PRO_VERSION && menu.findItem(R.id.menu_buy_pro) == null)
	{
		menu.add(Menu.NONE, R.id.menu_buy_pro, 2, R.string.menu_buy_pro).setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER);
	}

	if (menu.findItem(R.id.menu_faq) == null)
	{
		menu.add(Menu.NONE, R.id.menu_faq, Menu.NONE, R.string.menu_faq).setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER);
	}

	return super.onCreateOptionsMenu(menu);
}
 
源代码19 项目: guideshow   文件: MenuItemCompatHoneycomb.java
public static MenuItem setActionView(MenuItem item, View view) {
    return item.setActionView(view);
}
 
public static MenuItem setActionView(MenuItem item, View view) {
    return item.setActionView(view);
}