Progressmenuitem

Shows and stop a progress in the ActionBar.

View the Project on GitHub hotchemi/ProgressMenuItem

ProgressMenuItem

Build Status

Helper library about Showing and stopping a progress in the ActionBar.

gif

Download

Download from maven central.

dependencies {
  compile 'com.github.hotchemi:ProgressMenuItem:0.3.3'
}

How to use

Initialize

Simple in your Activity or Fragment's onCreateOptionsMenu method instantiate it.

Specifies a menu id to be progressed by the second argument.

private ProgressMenuItemHelper progressHelper;

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.refresh_menu, menu);
    progressHelper = new ProgressMenuItemHelper(menu, R.id.action_refresh);
    // or
    progressHelper = new ProgressMenuItemHelper(menu.findItem(R.id.action_refresh));
    return true;
}

Start progress

progressHelper.startProgress();

Stop progress

progressHelper.stopProgress();

Use large progress

private ProgressMenuItemHelper progressHelper;

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.refresh_menu, menu);
    progressHelper = new ProgressMenuItemHelper(menu, R.id.action_refresh, ProgressMenuSize.LARGE);
    return true;
}

gif

Override progress

Call setResourceId(int resId) and set your custom layout.

progressHelper.setResourceId(R.layout.my_menu_item_progress);

Sample

Please try to move the sample.

Requirements

Supports Android 2.1 or greater.

Contribute

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Added some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

Inspired

ProgressMenuItem is inspired by RefreshMenuItem.

But ProgressMenuItem has some merits:

ChangeLog

Used

Licence

 Copyright 2014 Shintaro Katafuchi

 Licensed under the Apache License, Version 2.0 (the "License");
 you may not use this file except in compliance with the License.
 You may obtain a copy of the License at

 http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.