2016-12-30 7 views
-4

У меня есть три кнопки кнопки a и b, c. Я хочу коснуться трех кнопок, как на картинке. Я новое образование в Android, пожалуйста, помогите мне. спасибоКак нажимать кнопки Android?

enter image description here

+0

вы хотите нажать все три за один раз? – Mrinmoy

+0

Это операция салфетки? – halfer

+0

Да, мне нужно нажать кнопку a на кнопку c –

ответ

0
  • создать макет
  • добавить представления для вашего макета
  • установить setOnTouchListener в макет
  • переопределить метод onTouch следующим:

    public boolean onTouch(View v, MotionEvent event) 
    { 
        LinearLayout layout = (LinearLayout)v; 
    
        for(int i =0; i< layout.getChildCount(); i++) 
        { 
    
         View view = layout.getChildAt(i); 
         Rect outRect = new Rect(view.getLeft(), view.getTop(), view.getRight(), view.getBottom()); 
         if(outRect.contains((int)event.getX(), (int)event.getY())) 
         { 
           /* Write code here to maintain all three buttons toched state, and if all bottons state are present generate Toast.    
         } 
        } 
    } 
    

Так, приведенный выше код, чтобы работать, сделать это в OnCreate,

onCreate(Bundle..){ 
b1.setOnTouchListener(this); 
b2.setOnTouchListener(this); 
b3.setOnTouchListener(this); 
} 

Затем кнопки всякий раз, когда прикоснулся, onTouch() будет перекрываться, теперь написать логику, чтобы поддерживать связь, и не забудьте очистить в течение некоторого времени, так что пользователь не может продолжить только прикосновение к кнопке 3, если состояния 1 и 2 кнопки уже присутствуют.

После этого, если доступны все состояния кнопок (, это означает, что пользователь скользнул таким образом, что все кнопки были коснуты), чтобы вы могли генерировать тосты.

Не стесняйтесь спросить, если у вас есть какие-либо сомнения в предлагаемом подходе

+0

спасибо большое У меня есть ошибка –

+0

Какая ошибка – Mrinmoy

+0

Когда я касаюсь кнопки, дайте мне ошибку из приложения. Я не могу тронуть три кнопки, которые я могу коснуться одной кнопкой. Я хочу коснуться трех сенсорные кнопки –

Смежные вопросы