如何通过按钮的 onClick 函数请求将焦点放在 EditText 上?
How to requestFocus on EditText from onClick function of button?
这是我的代码。
焦点未出现在 EditText(命名搜索)上。我在当前布局中没有任何其他 EditText。
handle.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
search.requestFocus();
}
});
尝试将此代码添加到您的 xml!
<EditText
android:focusable="true"
<requestFocus />
</EditText>
如果您想让键盘弹出,请尝试此代码
EditText myEditText = (EditText) findViewById(R.id.search);
((InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE))
.showSoftInput(myEditText, InputMethodManager.SHOW_FORCED);
也加入你的Mainfest
<activity android:name=".first" android:windowSoftInputMode="stateAlwaysVisible">
你应该使用
search.setFocusable(true);
search.requestFocus();
查看代码:
public class MainActivity extends ActionBarActivity implements View.OnClickListener {
private EditText text1;
private EditText text2;
private Button button1;
private Button button2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
text1 = (EditText)findViewById(R.id.editText);
text2 = (EditText)findViewById(R.id.editText2);
button1 = (Button)findViewById(R.id.button);
button2 = (Button)findViewById(R.id.button2);
button1.setOnClickListener(this);
button2.setOnClickListener(this);
}
@Override
public void onClick(View view) {
if(view.getId() == R.id.button){
text1.requestFocus();
}
else if(view.getId() == R.id.button2){
text2.requestFocus();
}
}
}
requestFocus() enough.No 附加属性 "focusable" 集,EditText 添加为默认行为。
您可能忘记添加 "button1.setOnClickListener(this);" 让按钮负责?
这是我的代码。 焦点未出现在 EditText(命名搜索)上。我在当前布局中没有任何其他 EditText。
handle.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
search.requestFocus();
}
});
尝试将此代码添加到您的 xml!
<EditText
android:focusable="true"
<requestFocus />
</EditText>
如果您想让键盘弹出,请尝试此代码
EditText myEditText = (EditText) findViewById(R.id.search);
((InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE))
.showSoftInput(myEditText, InputMethodManager.SHOW_FORCED);
也加入你的Mainfest
<activity android:name=".first" android:windowSoftInputMode="stateAlwaysVisible">
你应该使用
search.setFocusable(true);
search.requestFocus();
查看代码:
public class MainActivity extends ActionBarActivity implements View.OnClickListener {
private EditText text1;
private EditText text2;
private Button button1;
private Button button2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
text1 = (EditText)findViewById(R.id.editText);
text2 = (EditText)findViewById(R.id.editText2);
button1 = (Button)findViewById(R.id.button);
button2 = (Button)findViewById(R.id.button2);
button1.setOnClickListener(this);
button2.setOnClickListener(this);
}
@Override
public void onClick(View view) {
if(view.getId() == R.id.button){
text1.requestFocus();
}
else if(view.getId() == R.id.button2){
text2.requestFocus();
}
}
}
requestFocus() enough.No 附加属性 "focusable" 集,EditText 添加为默认行为。
您可能忘记添加 "button1.setOnClickListener(this);" 让按钮负责?