4

I am using snack bar for displaying information, it is working fine if keyboard is not opened. If keyboard is opened the snack bar message displaying whole screen not displaying properly i am using android 5.5. I added this line android:windowSoftInputMode="adjustResize|stateAlwaysHidden" in my activity manifest but still same issue. Please help me for this issue. Please find the image belowscreen shot. My snack bar code is Snackbar.make(coordinator,getString(R.string.validation_plz_enter_mandatory_flds, UtilConstants.ERROR_CODE_UI_2000),Snackbar.LENGTH_INDEFINITE).show();

Ganesh P
  • 196
  • 1
  • 14

5 Answers5

4

This is the Correct Solution of this problem: SnackBar show Above the SoftInput (Keyboard) - (when Keyboard is Open)

<activity android:name=".YourActivity"
    android:windowSoftInputMode="adjustResize"/> 

tag into your activity tag of the manifest.

enter image description here

Prince Dholakiya
  • 3,255
  • 27
  • 43
2

Have you initialized your snackbar like below code:

snackbar = Snackbar.make(findViewById(android.R.id.content), <Your message>, Snackbar.LENGTH_LONG);

or you have used your own layout??

Because if we use android's own UI element(android.R.id.content) it manages to show on valid UI of their own. You should first try this.

Android Geek
  • 8,956
  • 2
  • 21
  • 35
2

Put this property in your Manifest file to your proper activity.

        <activity android:name=".YourActivity"
              android:windowSoftInputMode="adjustResize"/>
nAkhmedov
  • 3,522
  • 4
  • 37
  • 72
1

Just Hide the KeyBoard where you call your SnackBar using below code:

  InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
            imm.hideSoftInputFromWindow(parentLayout.getWindowToken(), 0); // parentLayout is your main layout of an activity
Shashwat Gupta
  • 876
  • 9
  • 22
1

If your using CoordinatorLayout with AppBar and NestedLayout with EditText inside, it won't work. This is a bug in support lib, reported here.

Similar question here.

You can use a workaround by wrapping the CoordinatorLayout with another Constraint/Relative Layout (PS I've not tried RealtiveLayout but works using ConstraintLayout) and use android:fitsSystemWindows="true". with referenced to this answer.

Adolf Dsilva
  • 13,092
  • 8
  • 34
  • 45