Grazie a tutti, Timmmm è stato molto utile. Alla fine ho avvolto tutto e ho ottenuto una soluzione completa per nascondere la tastiera morbida per lo scorrimento delle schede. Ho 4 schede con editTexts su ognuna e ho bisogno di nascondere la tastiera durante lo scorrimento. Ho aggiunto che questo layout di frammento:
<!--Fixes keboard pop-up-->
<LinearLayout
android:layout_width="0dp"
android:layout_height="0dp"
android:background="@android:color/transparent"
android:focusable="true"
android:focusableInTouchMode="true">
</LinearLayout>
che sono stati aggiunti al codice attività (notare una piccola differenza con la risposta di un Timmmm: Non ho
mViewPager.getCurrentItem() == 0
qui, perché ho bisogno di nascondere tastiera per ogni vista:
// When swiping between different sections, select the corresponding
// tab. We can also use ActionBar.Tab#select() to do this if we have
// a reference to the Tab.
mViewPager.setOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() {
@Override
public void onPageSelected(int position) {
if (actionBar != null) {
actionBar.setSelectedNavigationItem(position);
}
}
@Override
public void onPageScrollStateChanged(int state)
{
if (state == ViewPager.SCROLL_STATE_IDLE)
{
// Hide the keyboard.
((InputMethodManager)getSystemService(INPUT_METHOD_SERVICE))
.hideSoftInputFromWindow(mViewPager.getWindowToken(), 0);
}
}
});
E qui è un'attività in AndroidManifest.xml:
<activity
android:name=".TestActivity"
android:label="@string/title_activity_test"
android:parentActivityName=".MainActivity"
android:windowSoftInputMode="stateHidden">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.atrinax.test.MainActivity" />
</activity>
fonte
2014-07-10 06:41:36
Forse è possibile forzare nascondere il soft keybord. Maggiori dettagli qui: http://stackoverflow.com/questions/1109022/how-to-close-hide-the-android-soft-keyboard –