我必須實現一個類的返回方法。因此,結構很簡單,只要Android:等待按鈕點擊
public boolean yesNo(String message){
//return something
}
這裏的問題是,有一個EditText對象和一個按鈕,我想回報取決於由EditText上用戶輸入的答案一個布爾值。所以很自然地,我必須等待用戶寫完後點擊按鈕。我已經嘗試在方法內部設置onClicklistener,但之後我無法將任何內容傳遞給外部方法。
我知道在android中一切都是異步的,所以我不應該等待用戶做些什麼,但在這種情況下,我沒有其他的想法。此外,我正在實施的方法是Jsch庫的UserInfo類。從我所瞭解的這個UserInfo是爲用戶交互而設計的,所以我想它會以某種方式通過調用yesNo方法來「提示」用戶,然後「等待」用戶作出反應。有任何想法嗎?如果有人向我解釋我的邏輯是否有錯誤,我也會很高興。我對使用AsynTask或runnables不太有信心,但我認爲它與此有關。
The only available documentation of UserInfo class
非常感謝!
編輯:到目前爲止的代碼:
public static class MyUserInfo implements UserInfo, UIKeyboardInteractive {
public Button goButton = (Button) MainActivity.contentView.findViewById(R.id.startSSH);
public EditText editText = (EditText) MainActivity.contentView.findViewById(R.id.commandSSH);
public boolean yesNo = false;
public boolean promptYesNo(String str) {
goButton.setOnClickListener(new View.OnClickListener(){
public void onClick(View v){
String answer = editText.getText().toString();
if(answer.equals("yes")){yesNo = true;}
else {yesNo = false;}
}
});
return yesNo;
}
}
了我所是設置在OnClickListeners的onClick方法中的類的字符串這就是公衆,但隨後告訴我,該字符串必須是最後的。但是,當它的最後我不能改變它。這就是爲什麼它不適用於onClicklistener。但也許我錯過了一些東西。任何想法? – Suppenkasper
請發表您的代碼 –
Ahh my bad。我在YesNo方法中聲明瞭String。 – Suppenkasper