2017-09-26 75 views
2

我是新的android開發。我試圖在MainActivity中的按鈕被點擊時編碼,它應該去下一個活動(EnableLocationActivity)。我得到一個錯誤,即活動(EnableLocation)不是封閉類。活動不是封閉類(android工作室)

我該如何解決這個問題?

MainActivity.java

import android.content.Intent; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.Button; 

public class MainActivity extends AppCompatActivity { 

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

    Button openingButton = (Button) findViewById(R.id.btn_main_next); 
    openingButton.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      Intent enableLocIntent = new Intent(MainActivity.this, EnableLocationActivity.this); 
      startActivity(enableLocIntent); 
     } 
    }); 

    } 
} 

而且......

EnableLocationActivity.java

import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 

public class EnableLocationActivity extends AppCompatActivity { 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_enable_location); 
    } 
} 

回答

2
Intent enableLocIntent = new Intent(MainActivity.this, EnableLocationActivity.this); 

應該

Intent enableLocIntent = new Intent(MainActivity.this, EnableLocationActivity.class); 

Intent構造函數您的使用期望Class作爲第二個參數。

+0

出於好奇,在項目面板中,爲什麼有些文件txt綠色和其他紅色?那是什麼意思? – KatZee

+0

@KatZee抱歉,沒有得到你的意思? – Ramanlfc

+0

您是否已將版本控制添加到您的項目中?綠色文件是新的,而紅色是已修改的。 – Audi

3

Intent enableLocIntent = new Intent(MainActivity.this,EnableLocationActivity.this);

Intent的第二個參數應該是EnableLocationActivity。 因爲。這可以被用來指代當前活動和EnableLocationActivity是不是你的當前活動,這是你的下一個活動。所以你的代碼應該是: -

Intent enableLocIntent = new Intent(MainActivity.this,EnableLocationActivity.class);