1

에해서 ProgressDialog를 기각하면서 내가 AsyncTask를 사용할 때 키보드를 숨기하지 마십시오 :이 같은 수행 할 때 대화 상자가 onPostExecute에서 일축 때, 키보드가 숨겨진는AsyncTask를이 : onPostExecute

class GetStreetName extends AsyncTask<String, Void, JSONObject> 
{ 

    ProgressDialog progressDialog; 
    @Override 
    protected void onPreExecute() { 
     super.onPreExecute(); 
     progressDialog = new ProgressDialog(getActivity()); 
     progressDialog.setCancelable(true); 
     progressDialog.setMessage(getString(R.string.dialog_loading)); 
     progressDialog.show(); 
    } 
    @Override 
    protected JSONObject doInBackground(String... params) { 
     // backGround task 
    } 
     @Override 
    protected void onPostExecute(JSONObject result) { 
     if (result!=null) { 
       .... 
      progressDialog.dismiss(); 
      enterStreetEditText.requestFocus(); 
     } 
    } 

입니다. 대화 상자가 닫히는 동안 어떻게 이것을 방지하고 키보드를 계속 보여줄 수 있습니까? ProgressDialog를 사용하지 않으면 문제가 발생하지 않습니다.

+0

'추가 안드로이드보십시오 : 포커스 = "true"로 안드로이드 : 당신의 XML에 enterStreetEditText를 선언 할 때 focusableIn TouchMode를이 = "true"로' – chteuchteu

+0

나를 –

답변

0

그것은 당신을 도울 수 있습니다

@Override 
protected void onPostExecute(JSONObject result) { 
    if (result!=null) { 
      .... 
     progressDialog.dismiss(); 
     enterStreetEditText.setFocusable(true); 
     enterStreetEditText.requestFocus(); 
     InputMethodManager imm = (InputMethodManager)this.getSystemService(Service.INPUT_METHOD_SERVICE); 
     imm.showSoftInput(enterStreetEditText , 0); 
    } 
} 
+0

I를 위해 작동하지 않았다 귀하의 솔루션을 시도했지만, 그것은 나를 위해 작동하지 않습니다. 게다가 키보드를 다시 열 필요가 없기 때문에 키보드를 닫지 않아도됩니다. –