2010-08-16 2 views
2

Я искал список обсуждений (не говоря уже об объявлении interwebs ad nauseum), и я не могу найти ответ и/или пример.Частично «открытый» SlidingDrawer

Мне нужно предоставить часть ListView в нижней части экрана, а затем (например, SlidingDrawer) отобразить остальную часть списка, если пользователь взметнется вверх.

SlidingDrawer имеет поведение, которое я хочу, но, похоже, не имеет способа контролировать, насколько он открыт или закрыт (возможно, я просто его не вижу).

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

Есть ли у кого-нибудь пример чего-то подобного описанному выше? Или указатель на кусочки, чтобы вернуть меня в правильное направление?

Спасибо, заранее.

ответ

1

SlidingDrawer не поддерживает это. Вы можете просто создать свой собственный :)

+0

Будет ли путь LinearLayout элементов, обернутых внутри ScrollView, разумным путем к решению? – Sasq

+0

Примечание: список для отображения не содержит большого количества элементов (обычно менее 2 экранов данных), если это имеет значение. – Sasq

+0

Привет, Sasq, посетите этот проект на github https://github.com/AshwinNBhanushali/Partial-SlidingDrawer/tree/master/PartialSlidingDrawer –

0

Я изменил исходный код виджета с выдвижным ящиком и протестировал его работоспособность. Если кто-то хочет просто дать мне свой идентификатор электронной почты. followling attrs.xml потребуется в вашем проекте, если вы собираетесь модифицировать код.

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <declare-styleable name="SlidingDrawer"> 
     <attr name="handle" format="integer"/> 
     <attr name="content" format="integer"/> 
    </declare-styleable> 
</resources> 
+0

Не могли бы вы опубликовать измененную версию сайта, например http://gist.github.com/? Я пытаюсь реализовать что-то подобное, и я не хотел бы изобретать велосипед. –

+0

I второй это. У вас есть этот код в любом месте? –

+0

Немного поздно, но мне тоже понравилась бы модификация! –