gpt4 book ai didi

android - View 上的 onDraw() 在布局后面绘制

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:32:33 26 4
gpt4 key购买 nike

好的,这就是交易。我想移动扩展图库类中的项目以更改图像的顺序。我现在这样做的方式:

  • 长按删除当前选中的项目,
  • 使用 onDraw() 绘制相同的图像,这样我就可以使用 onTouchEvent() 移动它了
  • 在发布时再次添加项目

这工作正常,但问题是当使用 onDraw() 方法时,它会在画廊项目后面绘制图像。有没有办法改变绘制内容的优先级?

最佳答案

好吧,我在进入完全不同的方向后发现了这一点 =/

对于有同样问题的人,这里是解决方案:

在构造函数中(或您初始化组件的任何其他地方)设置 setWillNotDraw(false) 并覆盖 dispatchDraw()dispatchDraw() 绘制 ViewGroup 子级,因此您可以自行决定是要绘制在其他 View 的后面还是顶部。

示例取自 Custom drawing on top of Gallery view (and it's child views)

@Override
protected void dispatchDraw(Canvas canvas) {
super.dispatchDraw(canvas);

// do your drawing stuff here
canvas.drawPath(mPath,mPaint);
}

关于android - View 上的 onDraw() 在布局后面绘制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4827848/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com