【问题标题】:INTENT and SETTINGS activity giving Cannot Resolve Contructor errorINTENT 和 SETTINGS 活动给出无法解决构造函数错误
【发布时间】:2015-04-14 02:40:47
【问题描述】:

处理我的第一个 Android 项目,需要为程序设置添加设置活动。我用一个按钮创建了一个 MainActivity 来测试设置活动。

我从 Android Studio 创建了默认的 SettingsActivity(没有改变任何东西)。

尝试通过单击主活动中的按钮来调用设置活动。收到以下错误:

Cannot Resolve Constructor 'Intent(android.view.View.OnClickListener...

Settings Activity 被称为 ProgramSettingsActivity 并且是 AndroidStudio 创建的默认代码......目前。开头是……

    public class ProgramSettingsActivity extends PreferenceActivity {
        private static final boolean ALWAYS_SIMPLE_PREFS = false;

        @Override
        protected void onPostCreate(Bundle savedInstanceState) {
            super.onPostCreate(savedInstanceState);

            setupSimplePreferencesScreen();
        }
     ...

mainActivity中的代码如下:

public class MainActivity extends ActionBarActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Button button=(Button)findViewById(R.id.myButton);
        button.setOnClickListener(new Button.OnClickListener(){
            public void onClick(View v) {
                Intent i = new Intent(this,ProgramSettingsActivity.class);
                startActivity(i);
            }
        });
    }
    ...

不知道从哪里开始......我显然错过了一些明显的东西。

感谢您的帮助....

【问题讨论】:

  • 谢谢!!显而易见的东西往往最难找到。

标签: android android-intent settings


【解决方案1】:

使用Intent i = new Intent(MainActivity.this,ProgramSettingsActivity.class);

匿名类内部new Button.OnClickListener(){}this指的是这个类的实例,而不是它的封闭MainActivity类。事情就是这样发生的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-12-13
    • 2015-09-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多