Q:

Can't select ListView's item with setFocusableInTouchMode(true)

I'v been stucked with such common problem but I can't still solve it. When my application's activity started, device is in touch mode by default.
I want to implement selection of some listview item, when user taps some button and use the following code for it:
... 
                // my activity, inside onCreate()
                myListView.setFocusable(true);
                myListView.setFocusableInTouchMode(true);

                button.setOnClickListener(
                    new OnClickListener {

                        public void onClick(View v) {
                            myListView.setSelection(specifiedPosition);
                        }
                    }
                );
                ...

But even with this logic ListView just set specified item to the top of itself and doesn't highlight them.
I also try to use requestFocus() but it didn't help me. How can I solve this problem?

A:

The short answer: setSelection doesn't do what you want - it means a different thing.
According to the setSelection documentation:

If in touch mode, the item will not be selected but it will still be
  positioned appropriately.

That's why you see the positioning.
Also see the Touch Mode documentation: 
http://developer.android.com/resources/articles/touch-mode.html

In touch mode, there is no focus and no selection. Any selected item
  in a list of in a grid becomes unselected as soon as the user enters
  touch mode. Similarly, any focused widgets become unfocused when the
  user enters touch mode. The image below illustrates what happens when
  the user touches a list after selecting an item with the trackball.

For possible solutions see the following post:
Highlight ListView selected row

