Example usage for android.support.v4.view MenuItemCompat setActionView

List of usage examples for android.support.v4.view MenuItemCompat setActionView

Introduction

In this page you can find the example usage for android.support.v4.view MenuItemCompat setActionView.

Prototype

public static MenuItem setActionView(MenuItem item, View view) 

Source Link

Document

Set an action view for this menu item.

Usage

From source file:com.itude.mobile.mobbl.core.view.components.tabbar.MBDefaultActionBarBuilder.java

@Override
public synchronized void hideProgressIndicatorInTool() {
    MBToolDefinition refreshToolDef = getRefreshToolDef();
    Menu menu = _menu;/* w w w .  java2s. c  om*/

    if (refreshToolDef != null && menu != null) {
        final MenuItem item = menu.findItem(refreshToolDef.getName().hashCode());

        MBViewManager.getInstance().runOnUiThread(new MBThread() {
            @Override
            public void runMethod() {
                MenuItemCompat.setActionView(item, null);
            }
        });
    }
}

From source file:com.googlecode.android_scripting.activity.ScriptManager.java

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.script_menu, menu);
    MenuItemCompat.setShowAsAction(menu.findItem(R.id.script_add), MenuItemCompat.SHOW_AS_ACTION_ALWAYS);
    MenuItemCompat.setActionProvider(menu.findItem(R.id.script_add), new AddActionProvider(this));// ???

    MenuItemCompat.setShowAsAction(menu.findItem(R.id.script_view), MenuItemCompat.SHOW_AS_ACTION_ALWAYS);
    MenuItemCompat.setShowAsAction(menu.findItem(R.id.script_setting), MenuItemCompat.SHOW_AS_ACTION_ALWAYS);
    MenuItem item = menu.findItem(R.id.script_search);
    SearchView searchView = new SearchView(this.getSupportActionBar().getThemedContext());
    MenuItemCompat.setShowAsAction(item, MenuItemCompat.SHOW_AS_ACTION_ALWAYS);
    MenuItemCompat.setActionView(item, searchView);// ??
    searchView.setOnQueryTextListener(new OnQueryTextListener() {
        @Override//from  w  ww  . j  a v a 2 s .  c  om
        public boolean onQueryTextSubmit(String query) {
            mInSearchResultMode = true;
            updateAndFilterScriptList(query);
            mAdapter.notifyDataSetChanged();
            return false;
        }

        @Override
        public boolean onQueryTextChange(String query) {
            mInSearchResultMode = true;
            updateAndFilterScriptList(query);
            mAdapter.notifyDataSetChanged();
            return false;
        }
    });
    return true;
}

From source file:es.ugr.swad.swadroid.modules.tests.TestsMake.java

/**
 * Shows a test question on screen//w w  w . ja v a  2 s  .  c o m
 *
 * @param pos Question's position in questions's list of the test
 */
private void showQuestion(int pos) {
    TestQuestion question = test.getQuestions().get(pos);
    List<TestAnswer> answers = question.getAnswers();
    TestAnswer a;
    ScrollView scrollContent = (ScrollView) findViewById(R.id.testMakeScroll);
    LinearLayout testMakeList = (LinearLayout) findViewById(R.id.testMakeList);
    TextView stem = (TextView) findViewById(R.id.testMakeQuestionStem);
    TextView questionFeedback = (TextView) findViewById(R.id.testMakeQuestionFeedback);
    TextView answerFeedback = (TextView) findViewById(R.id.testMakeAnswerFeedback);
    TextView score = (TextView) findViewById(R.id.testMakeQuestionScore);
    TextView textCorrectAnswer = (TextView) findViewById(R.id.testMakeCorrectAnswer);
    EditText textAnswer = (EditText) findViewById(R.id.testMakeEditText);
    ImageView img = (ImageView) findViewById(R.id.testMakeCorrectAnswerImage);
    MenuItem actionScoreItem = menu.findItem(R.id.action_score);
    CheckedAnswersArrayAdapter checkedAnswersAdapter;
    String answerType = question.getAnswerType();
    String feedback = test.getFeedback();
    String questionFeedbackText = question.getFeedback();
    String correctAnswer = "";
    int numAnswers = answers.size();
    Float questionScore;
    DecimalFormat df = new DecimalFormat("0.00");
    int feedbackLevel;
    int mediumFeedbackLevel = Test.FEEDBACK_VALUES.indexOf(Test.FEEDBACK_MEDIUM);
    int maxFeedbackLevel = Test.FEEDBACK_VALUES.indexOf(Test.FEEDBACK_MAX);

    scrollContent.setOnTouchListener(new View.OnTouchListener() {
        public boolean onTouch(View v, MotionEvent event) {
            findViewById(R.id.testMakeList).getParent().requestDisallowInterceptTouchEvent(false);
            return false;
        }
    });
    testMakeList.setOnTouchListener(new View.OnTouchListener() {
        public boolean onTouch(View v, MotionEvent event) {
            // Disallow the touch request for parent scroll on touch of child view
            v.getParent().requestDisallowInterceptTouchEvent(true);
            return false;
        }
    });

    questionFeedback.setVisibility(View.GONE);
    answerFeedback.setVisibility(View.GONE);
    textAnswer.setVisibility(View.GONE);
    textCorrectAnswer.setVisibility(View.GONE);
    testMakeList.setVisibility(View.GONE);
    img.setVisibility(View.GONE);

    testMakeList.removeAllViews();
    stem.setText(Html.fromHtml(question.getStem()));

    if ((questionFeedbackText != null) && (!questionFeedbackText.equals(Constants.NULL_VALUE))) {
        questionFeedback.setText(Html.fromHtml(questionFeedbackText));
    }

    feedbackLevel = Test.FEEDBACK_VALUES.indexOf(feedback);

    if (test.isEvaluated() && (feedbackLevel == maxFeedbackLevel)
            && !question.getFeedback().equals(Constants.NULL_VALUE)) {
        questionFeedback.setVisibility(View.VISIBLE);
    } else {
        questionFeedback.setVisibility(View.GONE);
    }

    if (answerType.equals(TestAnswer.TYPE_TEXT) || answerType.equals(TestAnswer.TYPE_INT)
            || answerType.equals(TestAnswer.TYPE_FLOAT)) {

        if (answerType.equals(TestAnswer.TYPE_INT)) {
            textAnswer.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_SIGNED);
        } else if (answerType.equals(TestAnswer.TYPE_FLOAT)) {
            textAnswer.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL
                    | InputType.TYPE_NUMBER_FLAG_SIGNED);
        } else {
            textAnswer.setInputType(InputType.TYPE_CLASS_TEXT);
        }

        a = answers.get(0);
        textAnswer.setText(a.getUserAnswer());
        textAnswer.setVisibility(View.VISIBLE);

        answerFeedback.setText(Html.fromHtml(a.getFeedback()));

        if (test.isEvaluated() && (feedbackLevel > mediumFeedbackLevel)) {
            if (answerType.equals(TestAnswer.TYPE_FLOAT)) {
                correctAnswer = "[" + a.getAnswer() + ";" + answers.get(1).getAnswer() + "]";

                if ((feedbackLevel == maxFeedbackLevel) && !a.getFeedback().equals(Constants.NULL_VALUE)) {
                    answerFeedback.setVisibility(View.VISIBLE);
                } else {
                    answerFeedback.setVisibility(View.GONE);
                }
            } else {
                for (int i = 0; i < numAnswers; i++) {
                    a = answers.get(i);

                    if ((feedbackLevel == maxFeedbackLevel) && !a.getFeedback().equals(Constants.NULL_VALUE)) {
                        correctAnswer += "<strong>" + a.getAnswer() + "</strong><br/>";
                        correctAnswer += "<i>" + a.getFeedback() + "</i><br/><br/>";
                    } else {
                        correctAnswer += a.getAnswer() + "<br/>";
                    }
                }
            }

            textCorrectAnswer.setText(Html.fromHtml(correctAnswer));
            textCorrectAnswer.setVisibility(View.VISIBLE);
        }
    } else if (answerType.equals(TestAnswer.TYPE_MULTIPLE_CHOICE)) {
        checkedAnswersAdapter = new CheckedAnswersArrayAdapter(this, R.layout.list_item_multiple_choice,
                answers, test.isEvaluated(), test.getFeedback(), answerType);

        for (int i = 0; i < numAnswers; i++) {
            a = answers.get(i);
            CheckableLinearLayout item = (CheckableLinearLayout) checkedAnswersAdapter.getView(i, null, null);
            item.setChecked(Utils.parseStringBool(a.getUserAnswer()));
            testMakeList.addView(item);
        }

        testMakeList.setVisibility(View.VISIBLE);
    } else {
        if (answerType.equals(TestAnswer.TYPE_TRUE_FALSE) && (numAnswers < 2)) {
            if (answers.get(0).getAnswer().equals(TestAnswer.VALUE_TRUE)) {
                answers.add(1,
                        new TestAnswer(0, 1, 0, false, TestAnswer.VALUE_FALSE, answers.get(0).getFeedback()));
            } else {
                answers.add(0,
                        new TestAnswer(0, 0, 0, false, TestAnswer.VALUE_TRUE, answers.get(0).getFeedback()));
            }

            numAnswers = 2;
        }

        checkedAnswersAdapter = new CheckedAnswersArrayAdapter(this, R.layout.list_item_single_choice, answers,
                test.isEvaluated(), test.getFeedback(), answerType);

        for (int i = 0; i < numAnswers; i++) {
            a = answers.get(i);
            CheckableLinearLayout item = (CheckableLinearLayout) checkedAnswersAdapter.getView(i, null, null);
            item.setChecked(a.getAnswer().equals(answers.get(0).getUserAnswer()));
            testMakeList.addView(item);
        }

        testMakeList.setVisibility(View.VISIBLE);
    }

    if (test.isEvaluated() && (feedbackLevel > mediumFeedbackLevel)) {
        textAnswer.setEnabled(false);
        textAnswer.setOnClickListener(null);

        if (feedback.equals(Test.FEEDBACK_HIGH)) {
            img.setImageResource(R.drawable.btn_check_buttonless_on);
            if (!answerType.equals(TestAnswer.TYPE_TRUE_FALSE)
                    && !answerType.equals(TestAnswer.TYPE_MULTIPLE_CHOICE)
                    && !answerType.equals(TestAnswer.TYPE_UNIQUE_CHOICE)) {

                if (!answers.get(0).isCorrectAnswered()) {
                    img.setImageResource(android.R.drawable.ic_delete);
                }

                img.setVisibility(View.VISIBLE);
            }
        }

        questionScore = test.getQuestionScore(pos);
        if (questionScore > 0) {
            score.setTextColor(getResources().getColor(R.color.green));
        } else if (questionScore < 0) {
            score.setTextColor(getResources().getColor(R.color.red));
        } else {
            score.setTextColor(Color.BLACK);
        }

        score.setText(df.format(questionScore));

        MenuItemCompat.setActionView(actionScoreItem, score);
        actionScoreItem.setVisible(true);
    }
}

From source file:org.transdroid.core.gui.TorrentsActivity.java

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    super.onCreateOptionsMenu(menu);
    // Manually insert the actions into the main torrent and secondary actions toolbars
    torrentsToolbar.inflateMenu(R.menu.activity_torrents_main);
    if (actionsToolbar.getMenu().size() == 0) {
        actionsToolbar.inflateMenu(R.menu.activity_torrents_secondary);
    }//from   w w  w .  j  av  a2  s  . co  m
    if (navigationHelper.enableSearchUi()) {
        // Add an expandable SearchView to the action bar
        MenuItem item = menu.findItem(R.id.action_search);
        SearchView searchView = new SearchView(torrentsToolbar.getContext());
        searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
        searchView.setQueryRefinementEnabled(true);
        searchView.setOnSearchClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                // Pause autorefresh
                stopRefresh = true;
                stopAutoRefresh();
            }
        });
        MenuItemCompat.setOnActionExpandListener(item, new MenuItemCompat.OnActionExpandListener() {
            @Override
            public boolean onMenuItemActionExpand(MenuItem item) {
                return true;
            }

            @Override
            public boolean onMenuItemActionCollapse(MenuItem item) {
                stopRefresh = false;
                startAutoRefresh();
                return true;
            }
        });
        MenuItemCompat.setActionView(item, searchView);
        searchMenu = item;
    }
    return true;
}

From source file:org.cm.podd.report.activity.HomeActivity.java

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    StyleUtil.setActionBarTitle(this, mTitle.toString());

    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.home, menu);

    settingMenuItem = menu.findItem(R.id.action_settings);
    newEventMenuItem = menu.findItem(R.id.action_new_event);
    badgeMenuItem = menu.findItem(R.id.badge);

    MenuItemCompat.setActionView(badgeMenuItem, notifCountView);

    badgeCounterButton = (Button) MenuItemCompat.getActionView(badgeMenuItem);
    badgeCounterButton.setOnClickListener(new View.OnClickListener() {
        @Override/*w  w w.j a v  a  2s. c o  m*/
        public void onClick(View view) {
            selectItem(1);
        }
    });

    return true;
}

From source file:com.andrada.sitracker.ui.fragment.PublicationInfoFragment.java

@OptionsItem(R.id.action_force_download)
void menuForceDownloadSelected() {
    if (currentRecord != null && !mIsDownloading) {
        mIsDownloading = true;//from  w  w  w. j  a  va2 s  .  c  o m
        //Change action view
        MenuItemCompat.setActionView(mForceDownloadAction, R.layout.ab_download_progress);
        //Start downloading in a background thread
        //Do force, no activity start
        downloadPublication(true, false);
        AnalyticsHelper.getInstance().sendEvent(Constants.GA_ADMIN_CATEGORY,
                Constants.GA_EVENT_PUB_MANUAL_REFRESH, Constants.GA_EVENT_AUTHOR_PUB_OPEN);
    }
}

From source file:com.brq.wallet.activity.modern.ModernMain.java

public void setRefreshAnimation() {
    if (refreshItem != null) {
        if (_mbwManager.getWalletManager(false).getState() == WalletManager.State.SYNCHRONIZING) {
            MenuItem menuItem = MenuItemCompat.setActionView(refreshItem,
                    R.layout.actionbar_indeterminate_progress);
            ImageView ivTorIcon = (ImageView) menuItem.getActionView().findViewById(R.id.ivTorIcon);

            if (_mbwManager.getTorMode() == ServerEndpointType.Types.ONLY_TOR
                    && _mbwManager.getTorManager() != null) {
                ivTorIcon.setVisibility(View.VISIBLE);
                if (_mbwManager.getTorManager().getInitState() == 100) {
                    ivTorIcon.setImageResource(R.drawable.tor);
                } else {
                    ivTorIcon.setImageResource(R.drawable.tor_gray);
                }/*from  w  w  w  .  jav  a 2 s .  c  om*/
            } else {
                ivTorIcon.setVisibility(View.GONE);
            }

        } else {
            MenuItemCompat.setActionView(refreshItem, null);
        }
    }
}

From source file:org.spinsuite.view.V_Process.java

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    super.onCreateOptionsMenu(menu);
    //   Inflate menu
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.process, menu);
    //   Get Item
    iSearch = menu.findItem(R.id.action_search);
    //   Print Format
    iPrintFormat = menu.findItem(R.id.action_print_format);
    //   Process//from   w w w  . j ava 2  s.  co  m
    iProcess = menu.findItem(R.id.action_process);
    //   Search View
    final View searchView = SearchViewCompat.newSearchView(this);
    if (searchView != null) {
        //   Set Back ground Color
        int id = searchView.getContext().getResources().getIdentifier("android:id/search_src_text", null, null);
        EditText searchText = (EditText) searchView.findViewById(id);
        //   Set Parameters
        if (searchText != null)
            searchText.setTextAppearance(this, R.style.TextSearch);
        //   
        SearchViewCompat.setOnQueryTextListener(searchView, new OnQueryTextListenerCompat() {
            @Override
            public boolean onQueryTextChange(String newText) {
                String mFilter = !TextUtils.isEmpty(newText) ? newText : null;
                //   Search
                searchLinstView(mFilter);
                return true;
            }
        });
        SearchViewCompat.setOnCloseListener(searchView, new OnCloseListenerCompat() {
            @Override
            public boolean onClose() {
                if (!TextUtils.isEmpty(SearchViewCompat.getQuery(searchView))) {
                    SearchViewCompat.setQuery(searchView, null, true);
                }
                return true;
            }

        });
        MenuItemCompat.setActionView(iSearch, searchView);
        //   Set Visible
        iSearch.setVisible(false);
        iPrintFormat.setVisible(false);
    }
    return true;
}

From source file:org.spinsuite.bchat.view.FV_Thread.java

@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
    super.onCreateOptionsMenu(menu, inflater);
    inflater.inflate(R.menu.bc_thread, menu);
    //   Get Item
    MenuItem item = menu.findItem(R.id.action_search);
    //   Search View
    final View searchView = SearchViewCompat.newSearchView(m_ctx);
    if (searchView != null) {
        //   Set Back ground Color
        int id = searchView.getContext().getResources().getIdentifier("android:id/search_src_text", null, null);
        EditText searchText = (EditText) searchView.findViewById(id);
        //   Set Parameters
        if (searchText != null)
            searchText.setTextAppearance(m_ctx, R.style.TextSearch);
        //   //w  w  w.  j  av  a  2 s .  c  om
        SearchViewCompat.setOnQueryTextListener(searchView, new OnQueryTextListenerCompat() {
            @Override
            public boolean onQueryTextChange(String newText) {
                if (m_ThreadAdapter != null) {
                    String mFilter = !TextUtils.isEmpty(newText) ? newText : null;
                    m_ThreadAdapter.getFilter().filter(mFilter);
                }
                return true;
            }
        });
        SearchViewCompat.setOnCloseListener(searchView, new OnCloseListenerCompat() {
            @Override
            public boolean onClose() {
                if (!TextUtils.isEmpty(SearchViewCompat.getQuery(searchView))) {
                    SearchViewCompat.setQuery(searchView, null, true);
                }
                return true;
            }

        });
        MenuItemCompat.setActionView(item, searchView);
    }
}

From source file:org.cobaltians.cobalt.activities.CobaltActivity.java

protected void addMenuItem(Menu menu, int order, JSONObject action, final int id, String position,
        String barsColor) {//from w ww . j  av a 2 s  .  c om
    try {
        final String name = action.getString(Cobalt.kActionName);
        String title = action.getString(Cobalt.kActionTitle);
        boolean visible = action.optBoolean(Cobalt.kActionVisible, true);
        boolean enabled = action.optBoolean(Cobalt.kActionEnabled, true);

        final MenuItem menuItem = menu.add(Menu.NONE, id, order, title);

        int showAsAction = MenuItemCompat.SHOW_AS_ACTION_IF_ROOM;
        switch (position) {
        case Cobalt.kPositionBottom:
            showAsAction = MenuItemCompat.SHOW_AS_ACTION_ALWAYS;
            break;
        case Cobalt.kPositionOverflow:
            showAsAction = MenuItemCompat.SHOW_AS_ACTION_NEVER;
            break;
        }
        MenuItemCompat.setShowAsAction(menuItem, showAsAction);

        ActionViewMenuItem actionView = new ActionViewMenuItem(this, action, barsColor);
        actionView.setActionViewMenuItemListener(new WeakReference<>(this));

        MenuItemCompat.setActionView(menuItem, actionView);
        menuItem.setVisible(visible);
        menuItem.setEnabled(enabled);
        mMenuItemsHashMap.put(name, actionView);
        //need this next hashmap to send onPressed when item is on overflow
        mMenuItemsIdMap.put(id, name);
        //need this next hashmap to set menuItem
        mMenuItemByNameMap.put(name, menuItem);
    } catch (JSONException exception) {
        if (Cobalt.DEBUG) {
            Log.w(Cobalt.TAG,
                    TAG + "addMenuItem: action " + action.toString() + " format not supported, use at least {\n"
                            + "\tname: \"name\",\n" + "\ttitle: \"title\",\n" + "}");
        }

        exception.printStackTrace();
    }
}