Each list item in my ListView has a button on it. When clicked, the list item grows in height and presents some extra options.
When that list item is near the bottom, those options run off screen. I'd like to make my ListView scroll a small amount to ensure the entire list item is visible.
setSelection(position) will accomplish this. However, it is not desirable as it scrolls that item to the top of the list. I just want the list item to scroll up as little as it takes to get the entire item on the screen.
Ideas?
Give SmoothScroll a shot, that might be what your looking for.
Related
What I'm trying to do:
When a list Item is clicked, I want the list to scroll until that Item is sitting on the bottom of the screen.
What I'm currently trying:
myList.smoothScrollToPosition((adapter.getView(position, view, parent)).getBottom());
What's happening there is that the list is scrolling all the way to the bottom, rather than to the bottom of that view.
how can I accomplish this?
if you need more code samples, just let me know :)
I have a listView (listFragment actually) with a lot of items. When I click on a item I want it to rise to the top of the list. I guess this in itself is pretty straight forward, but is it possible to attach some kind of transition annimation in order to not just make it appear at the top.
Also, I want the list to scroll to the top when an item is clicked so the item continues to be visible.
Hope you can provide some insight in how to do this
I have a listview, which is scrollable, with dynamically items loaded from the database. And I have two buttons, "UP" for scrolling up by 100 pixels and "Down" for scrolling down by 100 pixels also.
The problem is that after I click down or up, the screen scrolls but after that all items in listview are not selectable at their right place. For example, I press down key and it scrolls well but after that I click item3 and it accepts item1 as clicked object.
I have tried ListView.refreshDrawableState() but it doesn't work.
You might want to use the setSelection() method instead of scrolling the list by 100 pixels each time. Increment the selection when you're scrolling down and decrement it while scrolling up. This will assure that the right item is being clicked. Hope this helps.
i want to display the listview's scroll item by item, means single item height is equal to listview height, so on listview there is only one item will display at a time, and after scrolling the listview, remaining item will display. But problem is that if i scroll listview, it scroll many items, but i need to scroll only by one item.
in-short listview scroll by many row at a time but i want only one row scroll at a time
please suggest me some tips or method :)
thank you
So if I understand you correctly, you want a 'pager', sort of like, you scroll page per page instead of inbetween every item, right?
I'm using a Horizontal Pager at the moment, it uses a GroupView and measures the scroll amount to snap to the next view in the pager. Perhaps you could write your own GroupView as well calculating the scroll Y values to snap to the next page..
It's not going to be easy, but it's the only way I can think of.
You could look up Horizontal Pager on google and look at the code, and implement it for vertical paging :)
I have a list of about 100 items. In each list item I need a framelayout with 2 relative layouts. When a button called "Flip" is clicked then one relative layout will flip out and the other relative layout will flip in. And each item has full width of the screen. So, I need to show the item in a horizontal scroll view. Now, I want to keep at most 3 items every moment. When user scrolls to the first item then we have to update the 3 items. The first item will be the 2nd item. And we have to add another item at the front. In this way we have to update the items when user scrolls to the last item. I have tried many ways. I have used Gallery for the horizontal scroll view. And used the onItemSelected method. But, if I scroll the Gallery fast then it crashes. So, please someone help me to implement the 3 items idea.
It sounds like you need a ListView. Is there a reason you are trying to reinvent it?
Also don't you mean a vertical scroll view? Why are using a horizontal?