2016-05-08 15 views
0

私は現在私のレイアウトに苦労していて、つかまっています。私は2つのEditTextを持っていて、2つ目は複数行にすることができ、新しい行が追加されてキーボードが表示されたときにレイアウトを調整したい。そして私はまた、FABが常にキーボードの上にとどまるようにしたい。基本的には、メモを書き込むときにGoogle Keepと同じ動作をしたい。ここで FloatingActionButtonとEditTextを同時にキーボードの上に保持する方法はありますか?

は私のレイアウトです:

activity_fragment.xml私は設定

<?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" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <android.support.design.widget.AppBarLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     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" 
      app:layout_scrollFlags="scroll|enterAlways"/> 

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

    <!-- app:layout_behavior must be inside CoordinatorLayout (not in fragment) for correct scroll behavior --> 
    <FrameLayout 
     android:id="@+id/fragment_container" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     app:layout_behavior="@string/appbar_scrolling_view_behavior"/> 

    <android.support.design.widget.FloatingActionButton 
     android:id="@+id/fab" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_margin="@dimen/activity_horizontal_margin" 
     app:layout_anchor="@id/fragment_container" 
     app:layout_anchorGravity="bottom|right|end"/> 

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

fragment_note_detail.xml

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       xmlns:tools="http://schemas.android.com/tools" 
       android:orientation="vertical" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent"> 

    <EditText 
     android:id="@+id/fragment_note_detail_title_edittext" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="@dimen/recyclerview_margin" 
     android:layout_marginLeft="@dimen/recyclerview_margin" 
     android:layout_marginRight="@dimen/recyclerview_margin" 
     android:hint="@string/title_hint" 
     android:textStyle="bold" 
     android:singleLine="true" 
     android:imeOptions="actionNext" 
     tools:text="Title goes here"/> 

    <EditText 
     android:id="@+id/fragment_note_detail_description_edittext" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_margin="@dimen/recyclerview_margin" 
     android:hint="@string/description_hint" 
     android:gravity="top|start" 
     tools:text="Description goes here"/> 

</LinearLayout> 

android:windowSoftInputMode="adjustResize" 

特定のアクティビティの場合、FABはキーボードの上にとどまりますが、2番目のEditTextは新しい行が追加されたときにキーボードによって重なります。

Iは

android:windowSoftInputMode="adjustPan" 

を設定すると、その後のEditTextとカーソルは常にキーボード上にあるされているが、キーボードは常にFABと重なります。

どのようにして(FABとカーソルを常に表示できますか)あなたがマニュアルに書かれたようwindowSoftInputModeで2つの以上のメソッドを設定することができます

+0

をこの[URL](http://stackoverflow.com/help)を確認してください、それはあなたが助けになりますコンテンツの品質を高める –

答えて

関連する問題