2015-10-01 2 views
3

Пожалуйста, проверьте этот скриншотКак реализовать эту конструкцию материала? (Кнопка плавающей над клавиатурой)

enter image description here

Как добавить кнопки, как это в андроида. Есть ли библиотека для нее или что она называется?

Обратите внимание, что при скрытой клавиатуре эта кнопка занимает пространство для кнопок навигации.

Другой вопрос: Как изменить размер синего панели приложений, когда клавиатура появляется или скрывается?

** ОБНОВЛЕНИЕ: ** Я могу реализовать аналогичную компоновку с использованием кнопок без рамки в макете кадра и установки силы тяжести на дно. Затем я использовал android: windowSoftInputMode = "adjustResize" в файле манифеста, чтобы он работал с клавиатурой hide/unhide. Тем не менее эти кнопки не занимают пространство кнопок навигации. Также по-прежнему необходимо руководство для изменения размера панели приложений на клавиатуре.

ответ

1

Вы можете использовать

1- AppIntro

2- AppTour

+0

Я попробую и проверю, остаются ли кнопки на верхней части клавиатуры. Спасибо за указание на эти библиотеки – penduDev

+0

Я считаю, что AppIntro - лучший. вы можете поместить фрагмент custum в слайдер. –

0

Ну, я бы сказал, что кнопка не связана каким-либо образом с клавиатуры они. Держу пари, это всего лишь кнопка внутри FrameLayout с набором свойств android:layout_gravity="bottom".

+1

, когда я устанавливаю layout_gravity of FrameLayout снизу, тогда кнопка появляется внизу, но она не остается на верхней части клавиатуры – penduDev

0

Это кнопка без рамки помещается в контейнер (возможно LinearLayout) сам контейнер называется buttonBar

кнопка Borderless

Одна конструкция, которая может быть полезна кнопка "без полей". Кнопки Borderless напоминают базовые кнопки, за исключением того, что у них нет границ или фон, но при этом меняется внешний вид в разных состояниях, таких как как при нажатии.

Чтобы создать кнопку без рамки, примените стиль borderlessButtonStyle к кнопке. Например:

<Button 
    android:id="@+id/button_send" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="@string/button_send" 
    android:onClick="sendMessage" 
    style="?android:attr/borderlessButtonStyle" /> 

sample для панели кнопок

<LinearLayout android:id="@+id/footer" android:layout_width="fill_parent" 
    android:layout_height="wrap_content" android:orientation="horizontal" 
    android:layout_alignParentBottom="true" style="@android:style/ButtonBar"> 

    <Button android:id="@+id/saveButton" android:layout_width="wrap_content" 
     android:layout_height="wrap_content" android:layout_weight="1" 
     android:text="@string/menu_done" /> 

    <Button android:id="@+id/cancelButton" android:layout_width="wrap_content" 
     android:layout_height="wrap_content" android:layout_weight="1" 
     android:text="@string/menu_cancel" /> 
</LinearLayout> 

Эффект все остальное рушится, и эта кнопка панели будучи в верхней цит клавиатуры может быть достигнуто путем держать весь ваш взгляд, за исключением buttonBar в виде прокрутки.

0

Используйте это как ссылку. Вставьте макет внутри ScrollView.

<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" 
    > 

    <ScrollView 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1" 
     > 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:orientation="vertical" 
      > 

      <EditText 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:lines="1" 
       /> 

      </LinearLayout> 

    </ScrollView> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal" 
     > 

     <View 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      /> 

     <Button 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="button" 
      /> 

    </LinearLayout> 
</LinearLayout> 
Смежные вопросы