0

일반적으로 Snackbar가 표시되어 있으면 Snackbar가 숨길 때 Floating Action Button이 위로 이동 한 다음 정상 위치로 이동합니다. 6.0.1 이전의 모든 안드로이드 버전에서 내 응용 프로그램을 테스트했고 모든 것이 예상대로 작동합니다.Snackbar가 안드로이드 6.0.1로 표시되면 FAB가 키보드로 이동합니다.

불행히도 android 6.0.1에서 Snackbar가 사라지면 Floating Action Button이 소프트 키보드 아래로 이동합니다. 내가 부모 레이아웃으로 CoordinatorLayout이 안드로이드 지침에 따라로서

enter image description here

. 또한 매니페스트 파일에 android:windowSoftInputMode="adjustResize"을 시도했습니다.

<?xml version="1.0" encoding="utf-8"?> 
<android.support.design.widget.CoordinatorLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:fitsSystemWindows="true" 
    android:id="@+id/myCoordinatorLayout" 
    tools:context="com.example.myapp.MainActivity"> 

    <android.support.design.widget.AppBarLayout 
     android:layout_height="wrap_content" 
     android:layout_width="match_parent" 
     android:theme="@style/AppTheme.AppBarOverlay"> 

     <android.support.v7.widget.Toolbar 
      android:id="@+id/toolbar" 
      android:layout_width="match_parent" 
      android:layout_height="?attr/actionBarSize" 
      android:background="?attr/colorPrimary" 
      app:popupTheme="@style/AppTheme.PopupOverlay" /> 

    </android.support.design.widget.AppBarLayout> 

    <include layout="@layout/content_main"/> 

    <android.support.design.widget.FloatingActionButton 
     android:id="@+id/fab" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="bottom|end" 
     android:layout_margin="@dimen/fab_margin" 
     android:src="@mipmap/ic_add_white_24dp" /> 

</android.support.design.widget.CoordinatorLayout> 

이것은 일종의 버그입니까? 또는 이것을 프로그램 적으로 처리 할 수있는 방법이 있습니까?

업데이트 : Snackbar를 수동으로 닫으려고 할 때 FAB이 정상 위치로 돌아 오는 것을 발견했습니다. 그러나 스낵바를 숨기거나 해제 할 때까지 스낵바를 놓으면 문제가 발생합니다. Make FAB respond to Soft Keyboard show/hide changes 나는 다음과 같은 결과를 얻고있다 : 어떤 제안이 높게 평가되어

enter image description here

@Muhammad Faisal Hyder 제안이 방법을 사용

. 감사. 나는 다른 사람에 의해 요청이 질문에 대한 답을 준

+0

XML 코드를 게시 할 수 있습니까? –

+0

물론 게시하겠습니다. – Darush

답변

2

, 당신은 this 게시물을 시도 할 수 있습니다, 예에 (우리가 스크롤에 FAB의 적절한 행동을 달성하기 위해 방법을 CoordinatorLayout.Behavior<FloatingActionButton>를 확장하고 재정의해야 그것을 처리 할 수있는 프로그래밍 방법이 숨기기 및 표시) 및 스낵 바 또는 키보드 팝업에 따라 Fab도 적절하게 이동합니다. 편집 후

: 참조 대답 위

나를 위해 작동 잘 당신은뿐만 아니라 다음을 시도 할 수 있습니다.

추가 : android:fitsSystemWindows="true"<android.support.design.widget.CoordinatorLayout/>

에서 위의

추가, 다음, 여전히 작동하지 않는 경우

Manifest.xmlandroid:windowSoftInputMode="adjustResize" 활동에 그것을 밖으로 당신을 도울 것입니다 희망 .

+0

답장을 보내 주셔서 감사합니다. 나는 당신의 접근 방식을 시도하자마자 내 피드백을 쓸 것이다. – Darush

+0

ScrollingFABAnimation을 FAB layout_behavour로 추가 한 후 이상한 동작이 나타납니다. FAB는 소프트 키보드 위의 화면 크기의 약 절반까지 올라갑니다. – Darush

+0

동일한 XML 속성을 사용하셨습니까? –