RecyclerView/ScrollView中条目弹出PopupMenu导致RecyclerView自动滚动的问题

来源:互联网 发布:软件层次结构图 编辑:程序博客网 时间:2024/06/07 04:42

解决方法1

这是support.v7PopupMenu的一个bug,改用android.widget.PopupWindow包下的PopupMenu就可以了。当然PopupMenu只兼容到Kitkat,所以对于绝大部分脸小的应用是不可行的。

解决方法2

重写与PopupMenu绑定的AnchorViewrequestRectangleOnScreen(Rect rectangle, boolean immediate)方法,并且return false。比如当PopupMenu的锚点ViewImageView时。

public class NoScrollImageVIew extends ImageView {    public NoScrollImageVIew(Context context) {        super(context);    }    public NoScrollImageVIew(Context context, @Nullable AttributeSet attrs) {        super(context, attrs);    }    public NoScrollImageVIew(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {        super(context, attrs, defStyleAttr);    }    @Override    public boolean requestRectangleOnScreen(Rect rectangle, boolean immediate) {        return false;    }}

AnchorViewPopupMenu构造函数的第二个参数

1 0
原创粉丝点击