Tuesday, 15 January 2013

java - Adding a click listener to the Drag-Sort-Listview library -



java - Adding a click listener to the Drag-Sort-Listview library -

i've implemented library based off listfragment, , implementation similar code sample on library's github repo:

https://github.com/bauerca/drag-sort-listview/blob/master/demo/src/com/mobeta/android/demodslv/dslvfragment.java

my question is, how implement click listener?

this xml file:

<?xml version="1.0" encoding="utf-8"?> <com.mobeta.android.dslv.dragsortlistview xmlns:android="http://schemas.android.com/apk/res/android" xmlns:dslv="http://schemas.android.com/apk/lib/com.mobeta.android.dslv" android:id="@android:id/list" android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="3dp" dslv:drag_handle_id="@drawable/bg_handle" android:layout_margin="3dp" android:dividerheight="2dp" dslv:drag_enabled="true" dslv:collapsed_height="2dp" dslv:drag_scroll_start="0.33" dslv:max_drag_scroll_speed="0.5" dslv:float_alpha="0.6" dslv:slide_shuffle_speed="0.3" dslv:track_drag_sort="false" dslv:float_background_color="@color/blue" android:focusable="false" android:focusableintouchmode="false" dslv:use_default_controller="false" />

and how i've tried create click listener, doesn't respond:

@override public view oncreateview(layoutinflater inflater, viewgroup container, bundle savedinstancestate) { mdslv = (dragsortlistview) inflater.inflate(getlayout(), container, false); mcontroller = buildcontroller(mdslv); mdslv.setfloatviewmanager(mcontroller); mdslv.setontouchlistener(mcontroller); mdslv.setdragenabled(dragenabled); simplefloatviewmanager simplefloatviewmanager = new simplefloatviewmanager(mdslv); simplefloatviewmanager.setbackgroundcolor(color.transparent); mdslv.setfloatviewmanager(simplefloatviewmanager); mdslv.setonitemclicklistener(new adapterview.onitemclicklistener() { @override public void onitemclick(adapterview<?> parent, view view, int position, long id) { system.out.println("clicked!"); } }); homecoming mdslv;

}

it because utilize @ same time onitemclicklistener , ontouchlistener. have 3 options, take 1 like: 1) give ontouchlistener 2) homecoming false ontouch() when need click generated 3) generate click mdslv.performclick() in ontouch()when required

java android listview android-listfragment

No comments:

Post a Comment