Android: произвольный вид слайда под другим видом, как это делает программная клавиатура - PullRequest
11 голосов
/ 14 февраля 2010

Я хочу, чтобы в нижней части страницы отображался всплывающий вид вид программной клавиатуры отображается в разделе «Составление» приложения Mms. Он скользит снизу, как будто он добавляется к вертикали ориентированный LinearLayout, только делает ListView меньше. Становится часть текущего макета вместо того, чтобы выскакивать поверх него. Я бы хотел, чтобы это было точно с моим собственным видом.

Имеет ли этот вопрос смысл?

Ответы [ 2 ]

18 голосов
/ 14 февраля 2010

Конечно, это имеет смысл!

У меня есть демонстрация SlidingPanel, которая демонстрирует общую технику. Это немного сложнее, чем нужно, поскольку он реализует пользовательский класс View.

Суть в том, что у вас фактически есть панель в макете, расположенная там, где вы хотите, чтобы она была, но вы установили android:visibility="gone", чтобы она не появлялась. Когда вы хотите, чтобы он был видимым, сделайте его видимым и установите TranslateAnimation, чтобы вставить его внутрь.

0 голосов
/ 29 января 2016

Сегодня есть представление SlidingLayout для использования в качестве объяснения в этом вопросе .

Просто используйте это lib и добавьте в свой макет следующее:

<com.wunderlist.slidinglayer.SlidingLayer
xmlns:slidingLayer="http://schemas.android.com/apk/res-auto"
android:id="@+id/slidingLayer1"
android:layout_width="@dimen/layer_width"
android:layout_height="@dimen/layer_height"
slidingLayer:shadowDrawable="@drawable/sidebar_shadow"
slidingLayer:shadowSize="@dimen/shadow_size"
slidingLayer:offsetDistance="@dimen/offset_distance"
slidingLayer:previewOffsetDistance="@dimen/preview_offset_distance"
slidingLayer:stickTo="top|bottom|right|left"
slidingLayer:changeStateOnTap="true">

и добавьте в файл сборки gradle следующее:

compile 'com.wunderlist:sliding-layer:1.2.5'

Вы можете загрузить демонстрационное приложение с здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...