2012-05-02 25 views
0

我的滚动布局中有一些编辑文本。 在底部,我有一个按钮。Android:请求重点而不是EditText

实际上,在视图的每次打开时,第一个editText会自动请求焦点。我希望按钮获得焦点。

我试试这个,但没有成功:

final ScrollView s = (ScrollView)findViewById(R.id.ScrollView01); 
    s.post(new Runnable() { 
     public void run() { 
      Button button =(Button) findViewById(R.id.SaveProfileEditingButton); 
      button.requestFocus(); 
     } 
    }); 

谢谢您的HLEP。

+0

它可能无法工作,因为按钮只会在你运行的运行语句中存在不使用... –

+0

没有德雷克,没事的时候我globaly创建按钮改变。 –

+0

为什么-1?我不明白 –

回答

1

android:windowSoftInputMode="stateHidden"设置为您在中的活动AndroidManifest.xml隐藏键盘(由于专注于EditText而打开)。之后你的其他观点可能会得到关注。


更新

final ScrollView s = (ScrollView)findViewById(R.id.ScrollView01); 
s.post(new Runnable() { 
     public void run() { 
      EditText editText =(EditText) findViewById(R.id.yourEditText); 
      (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE)) 
        .hideSoftInputFromWindow(editText.getWindowToken(), 0); 

      Button button =(Button) findViewById(R.id.SaveProfileEditingButton); 
      button.setFocusable(true); 
      button.requestFocus(); 
     } 
}); 
+0

谢谢@Waqas,但没有任何改变... –

+0

EditText是否打开软键盘? – waqaslam

+0

是的,实际上它是开放的。 –

0

您的代码工作,但如何检查或什么将焦点设置按钮感。要检查它是否工作

boolean r = btn.requestFocus(); 
Log.i("Tag", String.valueOf(r)); 
+0

谢谢@Krishnakant Dalal,目的是:我有5个编辑文本,底部有一个按钮。对于第五编辑文本,我打开一个新的视图,从列表中选择国家。然后选择时,自动返回并填写第5个编辑文本。此时,我想请求按钮的焦点并显示我的页面底部,实际上,我正在显示键盘打开时的第一个聚焦编辑文本... –

+0

并且对于文本,重点是对于按钮 –

+0

如果您的目的得到解决,那么您可以使它变得如此复杂。您可以接受和赞成帖子。 –

相关问题