0
大家好我是android編程的新手。我想創建一個益智遊戲,其中用戶將通過在屏幕上拖動未排序的標籤進行排序。我正在使用listview控件來存儲未排序的html標記。我已實現了以下庫: https://github.com/terlici/DragNDropList如何獲得listview控件的索引或位置
現在我試圖獲取列表項的位置或索引用戶後刪除列表項,所以我可以比較用戶排序列表項目的實際排序的項。
這裏是我的代碼Main.java
PuzzleManager pm = new PuzzleManager(this);
pm.insertPuzzle("<html>,</h1>,<h1>,</html>,<body>,</body>", "<html>,<body>,<h1>,</h1>,</body>,</html>");
Cursor cursor = pm.getPuzzle(1);
pm.close();
String s = cursor.getString(1);
List<String> puzzleList = Arrays.asList(s.split(","));
ArrayList<Map<String, Object>> items = new ArrayList<Map<String, Object>>();
for(int i = 0; i < puzzleList.size(); ++i) {
HashMap<String, Object> item = new HashMap<String, Object>();
item.put("puzzle", puzzleList.get(i));
items.add(item);
}
DragNDropListView list = (DragNDropListView)findViewById(android.R.id.list);
DragNDropSimpleAdapter adaptor = new DragNDropSimpleAdapter(this,
items,
R.layout.row,
new String[]{"puzzle"},
new int[]{R.id.text},
R.id.handler);
list.setDragNDropAdapter(adaptor);
main.xml中
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<com.terlici.dragndroplist.DragNDropListView
android:id="@id/android:list"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
</LinearLayout>
row.xml提前
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="80px"
android:orientation="horizontal"
android:gravity="center_vertical"
>
<ImageView
android:id="@+id/handler"
android:layout_width="60px"
android:layout_height="60px"
android:src="@android:drawable/btn_star_big_on"
android:layout_marginLeft="8px"
/>
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Large Text"
android:textAppearance="?android:attr/textAppearanceLarge" />
</LinearLayout>
感謝
「DragNDropListView提供了一個用於拖放的事件偵聽器」:* list.setOnItemDragNDropListener(...)*。使用它來獲取丟棄項目的索引(** id **) – Rami 2014-12-05 19:25:01