android 带箭头的对话框

haiwanghappy 2011-09-28 09:32:55
最近在做一个能出来箭头的对话框,目前主要是点击一个图标弹出一个popupWindow,这个pw上显示一个带箭头的对话框的效果,箭头总是指向图标,目前想是应该继承viewGroup来重绘这个组件,但是没弄出来啊,请高手能指点一下,最好能给我源码,万分感谢。
很少用csdn,还请各位见谅。
...全文
1079 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
shenxiaolinil 2012-03-15
  • 打赏
  • 举报
回复
我也想要一个,邮箱shenxiaolinil@163.com 不甚感激,谢谢啦~最近就碰到了这个事情
winter_鸿鹄 2012-03-05
  • 打赏
  • 举报
回复
楼主能将源码打包发一下吗、不胜感激。
张沟老王 2011-09-30
  • 打赏
  • 举报
回复
我有个好例子 希望能和你交流学习!
小裴同学 2011-09-30
  • 打赏
  • 举报
回复
我想看看源码。嘎嘎,看看效果。我挺喜欢个性化UI的。你的可以写个封装类,方便以后调用。
haiwanghappy 2011-09-29
  • 打赏
  • 举报
回复
已解决,写一个MyPopupWindow,里面附带系统的popupWindow,在这个pw上增加视图,这个视图是从LinearLayout继承而来的子类,通过重写ondraw方法(需要设置setWillNotDraw(false)方法),或者dispatchDraw方法,绘画带箭头的圆角矩形对话框,使用path路径来画,就是直线和贝塞耳曲线。
Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG);
paint.setColor(R.color.ze);
paint.setStrokeWidth(1);
paint.setStyle(Paint.Style.STROKE);
Path path = new Path();
path.moveTo(0, 5);
path.lineTo(0, 35);
path.quadTo(0, 40, 5, 40);
path.lineTo(10, 40);
path.lineTo(15, 50);
path.lineTo(20, 40);
path.lineTo(55, 40);
path.quadTo(60, 40, 60, 35);
path.lineTo(60, 5);
path.quadTo(60, 0, 55, 0);
path.lineTo(5, 0);
path.quadTo(0, 0, 0, 5);
path.close();
canvas.drawPath(path, paint);

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧