2013-11-01 20 views
0

我的佈局有一個按鈕,我添加了一個偵聽器。請參見下面的代碼:無法使用2個參數創建Intent(X.class,Y.class)

Button submit = (Button)findViewById(R.id.submitBtn); 
submit.setOnClickListener(new View.OnClickListener(){ 
    @Override 
    public void onClick(View v) { 
     Intent i = new Intent(ParseStarterProjectActivity.this,UserInfoActivity.this); 
     i.putExtra("dummy", dummyData); 
     startActivityForResult(i,0); 
    } 
}); 

然而,我收到以下錯誤消息:

  1. 構造意圖(ParseStarterProjectActivity,UserInfoActivity)是未定義
  2. 類型UserInfoActivity沒有外圍實例是在範圍上可訪問的。

我已經確定UserInfoActivity活動已添加到Android Manifest中,並且它與ParseStarterProjectActivity位於同一個包中。這個Stackoverflow問題(No enclosing instance of the type DonationsActivity is accessible)描述了我的問題,但接受的答案不適用於我。我不想要這種方法,因爲在開始之前我需要在我的意圖中填充項目。任何指針將不勝感激!

回答

3

改變這一行

Intent i = new Intent(ParseStarterProjectActivity.this,UserInfoActivity.this); 

這個

Intent i = new Intent(ParseStarterProjectActivity.this,UserInfoActivity.class); 
+0

衛生署使用的!我覺得很愚蠢。謝謝! – janoulle

0

嘗試:

Intent i = new Intent(ParseStarterProjectActivity.this,UserInfoActivity.class); 
    Button submit = (Button)findViewById(R.id.submitBtn); 
    submit.setOnClickListener(new View.OnClickListener(){ 
     @Override 
     public void onClick(View v) { 
      // you can initialize intent to outside of this event 
      i.putExtra("dummy", dummyData); 
      startActivityForResult(i,0); 
     } 
    }); 

this指向當前的類。所以更改UserInfoActivity的擴展名。