2012-11-29 22 views
0

我有一個圖庫和其項目的自定義佈局。每個按鈕上有兩個按鈕。每次我觸摸一個項目View時,它的按鈕都會被按下。ViewGroup傳輸到其子代的onPressed狀態

當我點擊一個按鈕時,另一個不會收到onPressed狀態,但是當我點擊附近時,他們都會收到它。

如何防止改變未觸摸按鈕的狀態?

回答

0

我已經有一個重寫的類作爲容器,其中的按鈕。所以它被Luksprog提到的方式是我覆蓋setPressed()

public class GalleryItem extends FrameLayout { 
    @Override 
    public void setPressed(boolean pressed) { 

     return; 
    } 

} 
0

更換你Buttons在項目佈局與下面的定製Button類,看看行爲仍然存在的:

public class SpecialButton extends Button { 

    // implement constructors 

    @Override 
    public void setPressed(boolean pressed) { 
     if (pressed && (getParent() instanceof View) && ((View) getParent()).isPressed()) { 
      return; 
     } 
     super.setPressed(pressed); 
    } 

}