最初のアクティビティから 2 番目のアクティビティに移動するときに、キーボードを開こうとしています。メイン アクティビティには 2 つのボタンがあります。1) [NotShowKeyboard] ボタンをクリックすると、キーボードを使用せずに second.java アクティビティが開きます。2) [ShowKeyboard] ボタンをクリックすると、キーボードと EitdText を使用して second.java アクティビティが開きます。フォーカスがありますが、問題は、その方法がわからないことです。私はいくつかの例を上に置きましたキーボードを表示しますが、「ShowKeyboard」ボタンをクリックしてキーボードを開くとすぐに消えます。
Main.java:
NotShowKeyboard.setOnTouchListener(new View.OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
}
if (event.getAction() == MotionEvent.ACTION_UP) {
bundle.putBoolean("show", false);
Intent start = new Intent(Main.this, Start.class);
start.putExtras(bundle);
startActivity(start);
}
return false;
}
});
ShowKeyboard.setOnTouchListener(new View.OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
}
if (event.getAction() == MotionEvent.ACTION_UP) {
bundle.putBoolean("show", true);
Intent start = new Intent(Main.this, Start.class);
start.putExtras(bundle);
startActivity(start);
}
return false;
}
});
Second.java:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.start);
i = getIntent();
extras = i.getExtras();
search = (EditText) findViewById(R.id.start_edit);
search.addTextChangedListener(myTextWatcher);
if((extras.getBoolean("show"))==true) {
((InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE)).toggleSoftInput(InputMethodManager.SHOW_FORCED, InputMethodManager.HIDE_IMPLICIT_ONLY);
}
//getting all stuff like buttons imageViews etc..
}
NotShowButton がクリックされると、これが開きます。
ShowButton をクリックすると、次のように開きます。