2011-07-25 27 views
2

在Android上的Java中,當我們使用這種樣式進行編碼時像Javascript一樣的Android Java Context綁定

public void OnCreate(Bundle savedInstantState) { 

    SearchClass = (EditText) findViewById(R.id.SearchField); 
    SearchClass.addTextChangeListener(new TextWatcer() { 
     getData task = new getData(this); 
    } 
} 

使用這種編碼方式時:如何將上下文傳遞給textchangelistener? (我稱之爲asynctask與'this'做一些事情,但它需要正確傳遞上下文.

在JavaScript中你可以做類似於

SearchClass.AddTextChangeListener(new TextWatcher() { ..}).bind(this); 

來解決這個問題.

回答

0

在你的類聲明

Context mContext; 

初始化它

mContext = this; 

你可以在你的私人(內部)類中使用它。

+0

或者您可以使用「MyClassName.this」。例如 ... getData task = new getData(MainClass.this); ... – Tomas