Android:共享同级视图按下状态

问题描述:

我有一个布局,其中有两个孩子。我的目标是将整个布局功能作为一个按钮。每个孩子都有不同的颜色来显示按下的状态。当我单独按他们时,他们显示他们的按下状态很好。但是当按下时,我想他们显示按下状态。Android:共享同级视图按下状态

我的第一个想法是使用duplicateParentState,但父母从未好像处于按下状态,因为Views填充了布局。我的下一个想法是使用AddStatesFromChildren,但所有这些都是按下父按钮,但不是子按钮。最后我尝试了两种方式,但是这导致了一个错误。

如何让兄弟姐妹视图共享按下状态?

+0

寻找解决同样的问题。代码可以解决它,但我希望它是一个XML解决方案。 – 2015-02-19 10:47:53

你可能做这样的事情:

Button button = new Button(this); 
button.setOnClickListener(new OnClickListener() { 

    @Override 
    public void onClick(View v) { 

     Button otherButton = (Button) findViewById(R.id.other_button); 
     otherButton.setPressed(true); 

    } 
}) 

但是,当然,有一个叫做按钮,因为你需要。

我只有4年后期到这一点,但你很接近:

  • 设置他们两个父布局
  • 设置点击监听父
  • 然后在每个设置android:duplicateParentState="true"内的孩子。

工程就像一个魅力!