2013-10-11 4 views
0

enter image description hereКак решить проблему ImageView обивка внутри HorizontalScrollView на Android

Как показано на рисунке, у меня есть вкладки, как в закладках браузера. И у меня есть отступы между изображениями табуляции, чтобы перекрывать друг друга соседними изображениями. Мне нужно, чтобы определенное изображение должно было находиться поверх смежных изображений (изображение ниже), когда пользователь прикасается к нему, а также хочет сделать то же самое с помощью кода.

enter image description here

У меня есть onTouchListener ко всему Scrollview. Он отлично работает с приведенным ниже кодом, когда пользователь вручную касается изображения.

tab[id].bringToFront(); 
tabScrollView.invalidate(); 

Если бы я сделать то же самое с помощью кода вместо ручного прикосновения пользователя, выбранная вкладка изображение идет в правый конец, так как она использует метод BringToFront(). Есть ли способ, как я могу привести его только поверх смежных изображений?

Update:

Я уже пробовал,

tab[id].performClick(); 
tab[id].performLongClick(); 

А также пытались,

tab[id].setOnTouchListener(new MyTouchListener()); //my own listener 
// Obtain MotionEvent object 
long downTime = SystemClock.uptimeMillis(); 
long eventTime = SystemClock.uptimeMillis() + 100; 
float x = 0.0f; 
float y = 0.0f; 
int metaState = 0; 
MotionEvent motionEvent = MotionEvent.obtain(
       downTime, 
       eventTime, 
       MotionEvent.ACTION_UP, 
       x, 
       y, 
       metaState 
      ); 

// Dispatch touch event to view 
tab[id].dispatchTouchEvent(motionEvent); 

И методы, упомянутые выше, не помогает. Мне нужно предоставить более подробную информацию?

ответ

0

решаемые его,

// Obtain MotionEvent object 
long downTime = SystemClock.uptimeMillis(); 
long eventTime = SystemClock.uptimeMillis() + 100; 
float x = 0.0f; 
float y = 0.0f; 
int metaState = 0; 
MotionEvent motionEvent = MotionEvent.obtain(
      downTime, 
      eventTime, 
      MotionEvent.ACTION_UP, 
      x, 
      y, 
      metaState 
     ); 

// Dispatch touch event to the view which contains all the images 
tabScrollView.dispatchTouchEvent(motionEvent); 
Смежные вопросы