【问题标题】:How to go another page when I press settings button on action bar?当我按下操作栏上的设置按钮时如何转到另一个页面?
【发布时间】:2016-09-25 20:38:13
【问题描述】:

当我尝试按下操作栏上的设置图标并转到我的 android 项目中的设置页面时遇到问题。

代码如下:

public boolean onOptionsItemSelected(MenuItem item) {

        if(item.getItemId() == R.id.settings) {
            startActivity(new Intent(ProfileFragment.this, SettingsActivity.class));
        }

        return super.onOptionsItemSelected(item);
}

错误出现在 ProfileFragment.this, SettingsActivity.class 行中。没有致命错误,但代码下方有一条红线。

我该如何解决这个问题?

感谢您的回答。

【问题讨论】:

  • 在 startActivity(new Intent("context", SettingsActivity.class)) 处传递上下文;
  • 试过了还是有错误。
  • 通过这个getActivity().getApplicationContext();

标签: android android-actionbar settings android-settings


【解决方案1】:

使用这个

    public boolean onOptionsItemSelected(MenuItem item) {

        if(item.getItemId() == R.id.settings) {
            startActivity(new Intent(getContext(), SettingsActivity.class));
        }

        return super.onOptionsItemSelected(item);
    }

【讨论】:

    【解决方案2】:

    试试这个

     public boolean onOptionsItemSelected(MenuItem item) {
    
                if(item.getItemId() == R.id.settings) {
                    startActivity(new Intent(getActivity().getApplicationContext(), SettingsActivity.class));
                }
    
                return super.onOptionsItemSelected(item);
        }
    

    【讨论】:

      【解决方案3】:

      改变这个:

      startActivity(new Intent(ProfileFragment.this, SettingsActivity.class));
      

      到:

      startActivity(new Intent(getActivity(), SettingsActivity.class));
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-01-14
        • 1970-01-01
        • 2011-06-03
        • 2021-08-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-11-23
        相关资源
        最近更新 更多