【问题标题】:action bar Menu Item操作栏菜单项
【发布时间】:2014-07-08 06:12:40
【问题描述】:

在我的应用程序中,我有一个刷新按钮。单击它会在片段更新时旋转(动画)。假设我从给定的片段导航到另一个片段然后返回。当我导航回刷新菜单项时是否有可能自动单击而不按下它。

菜单项点击方法

public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
        case R.id.action_refresh:

            item.setActionView(getAnimation());

            getCurrency(code,item);
            mViewpager.setVisibility(View.INVISIBLE);
            Log.i("TAG", "refresh pressed =>");
            return true;
        }

        // Handle your other action bar items...

        return super.onOptionsItemSelected(item);
    }

我希望在不按菜单项的情况下导航返回时执行此代码

【问题讨论】:

  • 我想你需要mybutton.performClick();,你可以在onRestart方法中调用它
  • 是的,这是正确的,但我需要参考 onRestart 方法中的菜单项,如何获得?
  • 试试onOptionsItemSelected(menu.findItem(R.id.action_id));
  • onCreateOptionsMenu() 方法中从菜单中找到你的menuItem 并将其保存为你的类的一个字段:this.item = menu.findItem(R.id.my_menu_item);
  • 在哪个部分调用比较好?我有一个片段

标签: android android-fragments android-menu


【解决方案1】:

是的,当optionMenu创建方法从animation开始并真正更新如下时,您可以执行您正在执行的所有操作:

@Override
public boolean onCreateOptionsMenu(Menu menu){

     MenuInflater inflater = getMenuInflater();
     inflater.inflate(R.menu.my_options_menu, menu);

     //Perform the updating action 
     item.setActionView(getAnimation());

        getCurrency(code,item);
        mViewpager.setVisibility(View.INVISIBLE);
        Log.i("TAG", "refresh pressed =>");
        super.onOptionsItemSelected(item);

      return true;
} 

【讨论】:

  • 这对 OP 有何帮助无需按下即可自动单击刷新菜单项
  • @Shayanpourvatan 你可以问他这个问题。他问他怎么能做到这一点,我告诉他一个方法来做到这一点
猜你喜欢
  • 1970-01-01
  • 2014-10-31
  • 2015-12-17
  • 1970-01-01
  • 2014-03-10
  • 2012-06-14
  • 1970-01-01
  • 1970-01-01
  • 2013-08-03
相关资源
最近更新 更多