2013-02-03 73 views
2

執行setFocusable(假的)我用我的項目的EditText後THR焦點。在EditText中輸入值後,我想單擊一個按鈕。如果我點擊按鈕,EditText會丟失它的焦點。如何檢索機器人

load.setOnClickListener(new OnClickListener() { 
public void onClick(View v) { 
// TODO Auto-generated method stub 
    description.setFocusable(false); 
    } 
} 

如果我想改變這種狀況的EditText的值意味着我能做些什麼,我做了以下,但都沒有奏效,而且它不能得到它的焦點回到..

focus.setOnClickListener(new OnClickListener() { 
public void onClick(View v) { 
// TODO Auto-generated method stub 
    description.setFocusable(true); 
    } 
} 

給出任何建議,以實現這一目標?

回答

1

你需要調用View.requestFocus()將焦點設置回的EditText爲:

focus.setOnClickListener(new OnClickListener() { 
public void onClick(View v) { 
// TODO Auto-generated method stub 
    description.setFocusable(true); 
    description.requestFocus(); //<<< get Focus on EditText 
    } 
} 
+0

它不工作.. – MGR

+0

@GowthAMI:重點是按鈕,你想在該按鈕上設置Focus on EditText,點擊右鍵? –

+0

是的,重點是巴頓,... – MGR

0
focus.setOnClickListener(new OnClickListener() { 
public void onClick(View v) { 
// TODO Auto-generated method stub 
    description.setFocusable(true);// or use description.setEnable(true); 
    description.requestFocus(); //<<< get Focus on EditText 
    } 
} 
+0

它不工作..! – MGR

4

記得撥打setFocusableInTouchMode

focus.setOnClickListener(new OnClickListener() { 
    public void onClick(View v) { 
     description.setFocusable(true); 
     description.setFocusableInTouchMode(true); 
     description.requestFocus(); 
    } 
} 
+0

它的工作原理!我一直堅持幾個小時的調試......(好吧,如果代碼非常複雜,有時甚至不能正確地找到問題所在) – cuihao

0

試方法的setEnabled(boolean b)已代替setFocusable(布爾B)