您如何在Android中为一般活动添加视图?

时间:2012-03-22 20:07:54

标签: android user-interface android-activity

我正在为移动设备编写一个库。当某些事情发生时(登录,操作等),该库会通知用户。它在iOS中的工作方式是以GameCenter为模型的。一个窗口从屏幕顶部向下动画,通知用户,然后关闭动画。

在iOS中,我可以轻松地在UIWindow中获取当前视图并将其添加到其中。我对Android很新,我无法弄清楚这是怎么回事。看起来除非您了解当前的Activity及其布局,否则无法添加视图。

我想要完成的是什么?这甚至是Android的正确解决方案还是Android用户期望不同的东西?

3 个答案:

答案 0 :(得分:1)

您可以通过在活动对象或活动内部调用getWindow()。getDecorView()来获取活动的根视图。如果这是ViewGroup,您可以使用addView(View viewToAdd)添加视图,如果这不是ViewGroup的实例,则除非将其包装在ViewGroup中,否则无法向其添加视图。

答案 1 :(得分:0)

您需要做的只是在ViewGroup上调用addView()

答案 2 :(得分:0)

如果这些是您在Android中的第一个应用程序,请使用资源中的XML layours。在这种情况下,你总是必须知道你在做什么活动。没有它你就无法阅读资源。

如果您对视图使用纯代码,那么您可以获得您的活动,因为您的每个活动都是一个类。将所有操作放在所有活动的类库中,并在其中使用this.class来获取当前活动名称。

您还可以将当前活动作为参数传递到库函数中。因此,您不仅可以访问其根视图,还可以访问上下文,并且可以显示有关问题的Toast消息并可以访问资源。 (传递上下文是Android编码中非常常见的做法。)