我看過SimpleExpandableListAdapter
例如,當我點擊移動屏幕頂部的擴展組項時。我創建了NewAdapter
,它擴展了 BaseExpandableListAdapter
。我想做同樣的事情,但不知道該怎麼做。我搜索了很多不適合我的東西。請讓我知道該怎麼做。 先謝謝您。在expandablelistview的屏幕頂部移動/滾動點擊listitem視圖
0
A
回答
1
是你所尋找的,
public void onItemClick(AdapterView<?> arg0, View view, int position, long arg3)
{
myListview.setSelectionFromTop(position, 5);
}
這將使你的選擇的列表項爲屏幕上的第一個可見項。但是,如果沒有任何流暢的滾動動畫,只要點擊該項目,它就成爲第一個可見的項目。
如果你想滾動動畫,你可以使用,
public void onItemClick(AdapterView<?> arg0, View view, int position, long arg3)
{
int offset = position - myListview.getFirstVisiblePosition();
if(myListview.getFirstVisiblePosition() > 0)
offset -= 1;
myListview.smoothScrollByOffset(offset);
}
注意smoothScrollByOffset可從API級別11起。
但是,如果您選擇靠近列表底部的項目,則這兩種方法都不起作用,因爲如果最後一個列表項目可見,則列表不會再向上滾動。爲了克服這個問題,你可以將你的列表視圖轉換爲circular listview,如下所述。
1
我認爲使用持續時間會帶來更好的用戶體驗。所以你可以使用這個,並增加持續時間。將項目順利滾動到列表視圖的頂部。
int duration = 500; //miliseconds
int offset = 0; //fromListTop
listview.smoothScrollToPositionFromTop(position,offset,duration);
- descrease時間,使滾動更快
1
這一個是爲我工作
expandList.setOnGroupClickListener(new ExpandableListView.OnGroupClickListener() {
@Override
public boolean onGroupClick(ExpandableListView parent, View v, int groupPosition, long id) {
if (!parent.isGroupExpanded(groupPosition)) {
parent.expandGroup(groupPosition);
} else {
parent.collapseGroup(groupPosition);
}
parent.setSelectedGroup(groupPosition);
return true;
}
});
至於滾動的主要工作部件是
parent.setSelectedGroup(groupPosition);
可能這個堅持你的問題。
相關問題
- 1. Android:在頂部水平滾動視圖,加載屏幕部分
- 2. 試圖使滾動菜單棒滾動時在屏幕頂部
- 3. 當在屏幕頂部點擊狀態欄時,UITableView滾動到頂部
- 4. ExpandableListView在滾動視圖內
- 5. jQuery remove()將視圖移動到屏幕頂部執行
- 6. 使用滾動視圖移動屏幕外的動畫
- 7. 移動滾動屏幕外
- 8. 移動到屏幕頂部沒有H
- 9. 移動導航菜單在滾動後卡在屏幕的頂部
- 10. 雙擊李元素jQuery滾動到屏幕頂部
- 11. 在移動設備上滾動時屏幕頂部的平滑鎖元素
- 12. 將Listitem移動到列表框頂部
- 13. 當狀態欄被點擊時,將所有滾動視圖滾動到頂部
- 14. Android - 按鈕點擊滾動到視圖頂部
- 15. 如何讓EditText在滾動下面的視圖時粘到屏幕的頂部?
- 16. 滾動視圖中的動畫ExpandableListView
- 17. 在DOM中滾動移動元素,稍後鎖定到屏幕頂部
- 18. 滾動的EditText在滾動視圖到屏幕
- 19. 點擊DIV時滾動到頂部?
- 20. jScrollPane點擊滾動到頂部
- 21. 點擊後滾動到頂部
- 22. 點擊導航欄滾動到頂部
- 23. 它滾動到頁面頂部點擊
- 24. 滾動到頂部上點擊僞類
- 25. 當TD被點擊時,可滾動的DIV滾動到頂部
- 26. 檢測滾動視圖的哪一部分在屏幕上
- 27. 如何將第二行的列表視圖滾動到屏幕頂部
- 28. 移動屏幕左側的視圖
- 29. 單擊並滾動頂部
- 30. 滾動條防止點擊圖標(圖標上的頂部)
你能澄清這個問題嗎? – 2013-05-10 14:46:42
我想在可擴展列表視圖中移動屏幕頂部的點擊過的listitem – 2013-05-10 18:00:04