2012-05-13 31 views
1

我有一個導航按鈕,我在每個類中使用,並且想要在包含所有常見代碼的類中設置其onClickListener。但我得到一個android開始從onClickListener中的Intent在普通類中的活動返回錯誤

"The method startActivity(Intent) is undefined for the type new View.OnClickListener(){}" 

錯誤在startActivity(i)。

相關的代碼是:

public static void initiateNavigationButton(Context context, View view, int layoutResource) { 
    final Context classContext = context; 

    LayoutInflater inflater = LayoutInflater.from(classContext); 
    View layout = inflater.inflate(layoutResource, (ViewGroup) view); 

    Button navigationButton = (Button) layout.findViewById(R.id.navigation_button); 

    navigationButton.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      Intent i = new Intent(classContext, HomeActivity.class); 

      startActivity(i); 
     } 
    }); 
    } 

回答

3

你是一個實現了View.OnClickListener一個內部類中。

該類沒有可調用的方法,因此您需要將其包裝以便訪問父活動的方法。假設你的班級的名字是'MyActivity',將行startActivity(i);更改爲

MyActivity.this.startActivity(i); 
相關問題