Robię aplikację Android Phonegap.
Ustawiam editText pod CordovaWebView. Chcę uzyskać wydarzenie pokazujące/ukryte na klawiaturze.
Spróbuj obliczyć wysokość widoku, ale kończy się niepowodzeniem. Po ustawieniu focusText wyświetlana jest klawiatura. Ale CordovaWebView idzie w górę, a rozmiar widoku nie ulega zmianie. Więc nie mogę dostać zdarzenia pokazanego na klawiaturze.
Odbiornik zdarzeń klawiaturowych w systemie Android
Dlaczego widok idzie w górę?
Oto część mojego kodu.
główną działalność onCreateMethod()
int layoutId = R.layout.blank;
layout = new LinearLayout(this);
setContentView(layoutId);
layout.setOrientation(LinearLayout.VERTICAL);
textedit = ((Activity) this).getLayoutInflater().inflate(R.layout.main,null);
layout.addView((View) appView.getParent());
layout.addView(textedit);
layout.getChildAt(0).setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, 1));
setContentView(layout);
res/layout/blank.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
</LinearLayout>
res/layout/main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<EditText
android:id="@+id/editText1"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
</LinearLayout>
proszę o pomoc ....
Dzięki! Próbowałem. W CordovaWebView zdarzenia te były uruchamiane poprawnie, ale gdy editText stracił ostrość, zdarzenie showkeyboard zostało uruchomione ... I przy pomocy "this.getWindow() .setSoftInputMode (LayoutParams.WRAP_CONTENT);" showkeyboard wystrzeliwany, gdy pokazano editText ... – Yajap
Zmieniono na "to .getWindow(). setSoftInputMode (LayoutParams.WRAP_CONTENT); " do "this.getWindow(). setSoftInputMode (WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);", zdarzenie wywołane !!!!! Dzięki!!! – Yajap
Cześć Simon, to wydarzenie nie jest uruchamiane na urządzeniach z systemem iOS, czy istnieje obejście tego problemu. –