2014-01-27 28 views
0

我想使我的android活動不可​​點擊。我試過Enable/disable an activity programatically,但它不適合我。Android使屏幕禁用或不可點擊

我也試圖讓相對佈局禁用,但它不工作。

是否有任何其他的方式來製作和android活動(全)不可點擊?

+0

不,你需要讓你的視圖一個一個地無法點擊:) – Mahfa

+0

@Mahfa我有大約25個按鈕。所以我必須手動禁用每個按鈕。 – eswaat

+0

據我所知,是的,這並不難! :) – Mahfa

回答

2

您可以創建一個虛擬的透明視圖,它佔用整個屏幕並將其放置在所有視圖之上。

private boolean shouldBlockTouches = false; 

fakeView.setOnTouchListener(new View.OnTouchListener() { 
     @Override 
     public boolean onTouch(View v, MotionEvent event) { 
      return shouldBlockTouches; 
     } 
    }); 

設置shouldBlockTouches在哪裏你請。

1

你可以在XML設置每個視圖爲不可點擊:

android:clickable="false" 
+0

是的,但你能否提供替代的解決方案,使它從java代碼和按鈕點擊不是從XML。 – eswaat

+0

當然,請嘗試在每個按鈕上使用setEnabled(false)。這也應該讓他們無法點擊。 –

0

我覺得你可以通過在根佈局應用的onClick嘗試這樣做如果u想活動無法點擊,然後nothing.tou可以做到這一點,以及 不提供任何行爲,往往會無所事事。