Android:请求焦点而不是EditText

时间:2012-05-02 13:14:33

标签: android android-button

我的Scroll Layout中有一些编辑文本。 在底部,我有一个按钮。

实际上,在视图的每个开口处,第一个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();
       }
    });

谢谢你的支持。

2 个答案:

答案 0 :(得分: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();
      }
});

答案 1 :(得分:0)

您的代码正在运行,但您如何检查或将注意力集中在Button上的意义。要检查它是否正常使用

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