I guess I was in the same situation. I wanted to be able to control the focus of the listview programmatically with buttons .
One solution is to deal with the setFocusableInTouchMode
, but I've never achieved to make it work.
The other solution is to forget about the focus and use a checkable listview. First set your listview to "single choice mode" in XML or in java : Mylistview.setChoiceMode(1)
Then you'll be able to check any item you want with Mylistview.setItemChecked(position, true)
So when you launch the application (OnCreate), use Mylistview.setItemChecked(0, true)
to check your first item.
Then if you want your button to select the next item for exemple, use :
Mylistview.setItemChecked(Mylistview.getCheckedItemPosition() + 1, true)
You can specify the look when the item is checked or not and there's different pre-built chekable listviews.
If you want more explanations, see my post