2014-03-05 3 views

ответ

4

вы можете отключить мульти прикосновение на экране ... что может позволить только одним прикосновением по

месте этой кнопки линии разметки ViewGroup

андроида: splitMotionEvents = «ложь»

<LinearLayout 
     android:id="@+id/list_layout" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:orientation="horizontal" 
     android:splitMotionEvents="false" > 

     <Button 
      android:id="@+id/listView1" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:scrollbars="none" > 
     </Button> 

     <Button 
      android:id="@+id/listView2" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:scrollbars="none" > 
     </Button> 
    </LinearLayout> 
0

Отключить все другие кнопки мыши слушателем всех кнопок

+0

Вы имеете в виду, когда пользователь вводит «a», а затем другой алфавит отключается ... не очень хорошая логика. Как я думаю, –

+0

это должен быть комментарий. –

0

На первой кнопке мыши, вы можете сделать это в течение определенных секунд, запустив одну нить

second_btn.setEnabled(false); or second_btn.setClickable(false); 
0

Если кнопки одна рядом с другой вы можете сделайте радиогруппу, которая сделает вашу работу без какой-либо работы: D. Если нет, вы можете использовать логическую переменную synk и играть со всеми случаями.

0

Радиогруппа должна делать магию. Так как пользователь сможет выбрать любой вариант (я имею в виду кнопку за раз).

0

Вы могли бы попробовать что-то вроде этого для каждой кнопки:

boolean buttonClicked = false; 

button.setOnClickListener(new OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     if(!buttonClicked) { 
     buttonClicked = true; 
     ... 
     ... 
     ... 
     buttonClicked = false; 
     }    
    } 
}); 
1

Вы можете попробовать так:

findViewById(R.id.buttonX).setOnClickListener(new View.OnClickListener() {       
      @Override 
      public void onClick(View view) { 
        ViewGroup group = (ViewGroup)findViewById(R.id.container); 
        for (View touchable : group.getTouchables()) { 
          if (touchable != view && touchable.isPressed()) { 
            Log.d("...", "skip"); 
          } 
        } 
      } 
    }); 
0

Для отключения нажать две кнопки в то же время мультитача на вашем приложении используя этот подход в своей теме - он отлично работает!

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 
    ... 

    <item name="android:splitMotionEvents">false</item> 
    <item name="android:windowEnableSplitTouch">false</item> 
</style> 
Смежные вопросы