【发布时间】:2015-07-31 03:44:57
【问题描述】:
参考下图,我希望带有黄色背景和右边框的视图从右侧滑入一些文本。所以这个要求包括:
- 创建自定义视图(我猜这需要画布)
- 为其指定宽度、高度、位置、颜色、边框、边框颜色等。
- 从右侧滑动的动画
- 此自定义视图中的文本视图以显示文本
我参考了this 教程来了解如何在布局中包含带有画布的视图。但是我尝试了以下操作,而不是硬编码的点位置:
public MyView(Context context) {
super(context);
WindowManager wm = (WindowManager) DashBoardActivity.mContext
.getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
Point size = new Point();
display.getSize(size);
width = size.x;
height = size.y;
width -= 10;
height -= 50;
myPath = new Pt[6];
myPath[0] = new Pt(width, height);
myPath[1] = new Pt(width - 400, height);
myPath[2] = new Pt(width - 500, height - 100);
myPath[3] = new Pt(width - 400, height - 200);
myPath[4] = new Pt(width, height - 200);
myPath[5] = new Pt(width, height);
}
但视图没有按预期定位。我尝试了不同的硬编码位置,但要么显示在错误的位置,要么根本不显示。
另外,为了显示文本,我在布局本身中添加了 textview,但它显示在屏幕的左上角,而不是下图中显示的位置。
我怎样才能做到这一点?任何建议表示赞赏。
【问题讨论】:
标签: android android-canvas android-custom-view