如何从服务中的视图中获取服务实例?

时间:2016-12-21 18:05:03

标签: android

我有一项服务用于通过WindowManager显示自定义视图,并将其保留在屏幕上一段时间。是否可以从我的自定义视图中获取我的服务实例?我认为应该是因为我基本上在我的服务中持有对该视图的引用,如下所示:

MyCustomView mCustomView;
...

onCreate() {
   mCustomView = new MyCustomView(this);
   ...
}

2 个答案:

答案 0 :(得分:1)

虽然我没有尝试过,但我认为getContext()上的View会返回Service,假设您的Servicethis您的问题中的代码段。

答案 1 :(得分:0)

您的服务充当自定义视图的上下文。 View类有一个getContext()方法,显然可以返回前面提供的上下文。您只需要将您的上下文转换为您的服务:

MyService service = (MyService)mCustomView.getContext();