2013-07-20 2 views
0

Я использую индикатор выполнения в сопоставленной родительской макете в своем приложении. Проблема заключается в том, что кнопка в фоновом режиме по-прежнему доступна для кликов, пока работает индикатор выполнения. Они не должны быть интерактивными, поэтому как сделать их недоступными для кликов. Раскладка:android, маскирующий макет с другим макетом

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="@color/black_with_fifty_percent_alpha" 
    android:gravity="center" 
    android:orientation="vertical" > 

    <LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:background="@android:color/white" 
     android:gravity="center_horizontal" 
     android:orientation="vertical" > 

    <ProgressBar 
     style="?android:attr/progressBarStyleLarge" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" /> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="@string/text_tv_progress_bar_bultenler" 
     android:textAppearance="?android:attr/textAppearanceMedium" /> 

    </LinearLayout> 

</LinearLayout> 
+0

setClickable (булево) не работает? – pskink

ответ

0

Попробуйте установить это в этой схеме:

OnTouchListener listener = new OnTouchListener() { 
      @Override 
      public boolean onTouch(View v, MotionEvent event) { 
       return true;//consume the touch event 
      } 
     }; 
    yourLayout.setOnTouchListener(listener); 
+0

«setClickable» метод, вероятно, работает, также установка сенсорного прослушивателя - это решение, но я не хочу этого, я хочу знать, есть ли такое простое решение, как «android: maskBackground» в файле макета xml. – ismailarilik

+0

насколько я знаю, нет .. – kvh

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