Как использовать commonsware с обычной активностью - PullRequest
0 голосов
/ 05 января 2012

У меня уже установлено действие, которое должно расширять другое действие, поэтому я бы предпочел использовать класс TouchListView для перетаскивания в обычном режиме с моим существующим действием, а не расширять ListActivity. Тем не менее, я не могу найти пример того, как это сделать. В xml моей деятельности я включил:

<com.test.dragdrop.TouchListView
            xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:tlv="http://schemas.android.com/apk/res/com.test.activities" 
            android:id="@android:id/list"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:drawSelectorOnTop="false"
            tlv:normal_height="64dip"
            tlv:expanded_height="128dip"
            tlv:grabber="@+id/icon"
            tlv:remove_mode="slideRight"
                    android:layout_centerHorizontal="true" 
                    android:layout_centerVertical="true" 
                    android:layout_below="@id/menu_bar_top_include"
                    android:layout_above="@id/footerbar_lists"
                    android:cacheColorHint="#0000" 
                    android:paddingTop="2dip"/>

Теперь я не уверен, как перевести это на динамическое создание в моем коде actvities. Я предполагаю, что мне нужно поместить код в onCreate () и создать оболочку RelativeLayout и поместить в нее класс TouchListView, но опять же я не уверен, когда речь идет о пользовательском классе представления ... кто-нибудь делал это раньше?

Примечание: я также пытался просто использовать:

TouchListView tlv = (TouchListView) findViewById (R.id.list);

но я получаю ошибки компилятора:
--- по какой-то причине компилятор не может найти "R.id.list" --- Это потому, что он внутри пользовательского представления? Есть ли другой способ указать это?

1 Ответ

1 голос
/ 05 января 2012

Ничто не отличается от использования TouchListView в обычном действии, чем использование ListView в обычном действии. Все, что вы делаете, это вызываете findViewById(), чтобы получить ListView, и вызываете setAdapter() на ListView, чтобы связать с ним желаемый ListAdapter.

...