2012-10-24 19 views
0

我使用alertdialog使用編輯文本顯示我的txt文件內容。這裏是用於警報對話框的代碼如何隱藏鍵盤在android中點擊提醒對話框中的編輯文本

File sdcard = Environment.getExternalStorageDirectory(); 
        file = new File(sdcard.getPath() + Constants.USERNOTE_FOLDER + "/"+value); 
        System.out.println("txt file path name : "+file); 

       //Read text from file 
       StringBuilder text = new StringBuilder(); 

       try { 
        BufferedReader br = new BufferedReader(new FileReader(file)); 
        String line; 

        while ((line = br.readLine()) != null) { 
         text.append(line); 
         text.append('\n'); 
        } 
       } 
       catch (IOException e) { 
        //You'll need to add proper error handling here 
       } 

       System.out.println("text value : "+text); 
       String filename=null; 
       String toRemove = ".txt"; 
       if(value.endsWith(toRemove)) { 
        filename=value.substring(0,value.length()-toRemove.length()); 
       } 
       System.out.println("file name : "+filename); 

       LayoutInflater factory = LayoutInflater.from(ViewUserNote.this); 
       final View textEntryView = factory.inflate(R.layout.readusernote, null); 
       EditText readval = (EditText)textEntryView.findViewById(R.id.readtext); 
       readval.setText(text); 
       Builder alert = new Builder(ViewUserNote.this); 
       AlertDialog dialog =alert.create(); 
       dialog.setTitle(filename); 
       dialog.setView(textEntryView); 

       dialog.show(); 

在這個當我點擊編輯文本鍵盤不應該顯示。我應該如何實現這個。請任何一個幫我....

回答

2
final InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); 
    imm.hideSoftInputFromWindow(yourEditText.getWindowToken(), 0); 

您可以隨時禁用您的編輯文本,只是setClickable,啓用,可聚焦的屬性爲false。

+1

我已經使用這個那朵,但我不能隱藏鍵盤 – neelsnallu

+0

看到我的編輯答案。 – meh

+0

謝謝。我通過將焦點設置爲false來獲得結果。 – neelsnallu

1

編輯

alert.setNegativeButton(cancel, 
       new DialogInterface.OnClickListener() { 
        public void onClick(DialogInterface dialog, int whichButton) { 

         saveimage(); 
         InputMethodManager im = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); 
         im.hideSoftInputFromWindow(input.getWindowToken(), 0); 
         dialog.cancel(); 
        } 
       }); 
+0

這段代碼也不適合我。在我的代碼我使用inflater來顯示編輯文本。病態的inflater是隱藏編輯文本的鍵盤的問題 – neelsnallu

+0

我想問題是在獲取對話界面事件嘗試我編輯的答案 –

+0

謝謝。我通過將焦點設置爲false來獲得結果。 – neelsnallu

相關問題