How to prevent Button inside ListItem getting highlight

后端 未结 4 1732
轻奢々
轻奢々 2020-12-17 01:52

So I have custom list item with buttons for a ListView. When pressed, the button display alternate drawable to show feedback to user. However when I click on the row, every

相关标签:
4条回答
  • 2020-12-17 02:10

    I found out that setting android:clickable="true" to the parent view will prevent child views state to be changed.

    See this answer.

    0 讨论(0)
  • 2020-12-17 02:24

    im my opinion you need to disable the state from the parent as android:duplicateParentState="false"

    add this to your Button

    0 讨论(0)
  • 2020-12-17 02:25

    I have this problem too, I Google it and try it about 3 hours! now I found the solution. just add OnClickListener to child view. and even DO NOTHING in OnClick method. It works on 2.3 emulator and my nexus 5.

    0 讨论(0)
  • 2020-12-17 02:35

    This makes my app work harder, but it solves the problem:

    ...
    mImageIcon.setOnTouchListener(new View.OnTouchListener() {
    
            @Override
            public boolean onTouch(View v, MotionEvent event) {
                switch (event.getAction()) {
                case MotionEvent.ACTION_DOWN:
                    v.setBackgroundResource(R.drawable.my-background);
                    break;
                case MotionEvent.ACTION_UP:
                case MotionEvent.ACTION_CANCEL:
                    /*
                     * You can use another background rather than 0.
                     */
                    v.setBackgroundResource(0);
                    break;
                }
    
                return false;
            }// onTouch()
        });
    
    0 讨论(0)
提交回复
热议问题