活动何时完成绘制?

时间:2010-07-03 10:41:34

标签: android graphics

这可能有些奇怪的问题,但我无法弄明白。 基本上我有一个扩展View的类并覆盖onDraw方法,因此它绘制了一个位图。我想要做的是从画廊中选择一张图片,发送并通过意图并在视图上绘制。

问题是我无法在启动时获取活动来绘制位图。我尝试进入onCreate,onStart ......没有用。

如果我按下按钮并调用invalitate(),它会起作用,所以我怀疑我在Activity没有完成绘制之前尝试绘制。

有什么建议吗?

2 个答案:

答案 0 :(得分:1)

好吧,如果你在onCreate中实例化扩展View的类,那应该可行。

看一下这个例子:

@Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    // Set full screen view
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                                     WindowManager.LayoutParams.FLAG_FULLSCREEN);
    requestWindowFeature(Window.FEATURE_NO_TITLE);

    customView = new CustomView(this);
    setContentView(customView);
    customView.requestFocus();
  }

答案 1 :(得分:0)

覆盖onWindowFocusChanged()中的方法Activity。 您可以在此处确保已绘制视图。您可以使用此方法开始获取视图的尺寸/位置。 例如。 customView.getLeft()