我有一项服务用于通过WindowManager
显示自定义视图,并将其保留在屏幕上一段时间。是否可以从我的自定义视图中获取我的服务实例?我认为应该是因为我基本上在我的服务中持有对该视图的引用,如下所示:
MyCustomView mCustomView;
...
onCreate() {
mCustomView = new MyCustomView(this);
...
}
答案 0 :(得分:1)
虽然我没有尝试过,但我认为getContext()
上的View
会返回Service
,假设您的Service
是this
您的问题中的代码段。
答案 1 :(得分:0)
您的服务充当自定义视图的上下文。 View
类有一个getContext()
方法,显然可以返回前面提供的上下文。您只需要将您的上下文转换为您的服务:
MyService service = (MyService)mCustomView.getContext();