android - 如何在服务的主要活动中使用相同的对象
问题描述
我想在我的主 Activity 中使用 Service 中的 ArrayAdapter 和 MediaRouter 对象。什么是最好的解决方案?
public class MyActivity extends Activity {
MediaRouter router;
ArrayAdapter<RouteInfoWrapper> adapter;
ListView list;
MediaRouter.Callback callback = new MediaRouter.Callback() {
@Override
public void onRouteAdded(MediaRouter router, MediaRouter.RouteInfo route) {
super.onRouteAdded(router, route);
if (route.isDefault())
return;
adapter.add(new RouteInfoWrapper(route));
}
};
public static class RouteInfoWrapper {
MediaRouter.RouteInfo routeInfo;
public RouteInfoWrapper(MediaRouter.RouteInfo routeInfo) {
this.routeInfo = routeInfo;
}
@Override
public String toString() {
return routeInfo.getName();
}
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
adapter = new ArrayAdapter<RouteInfoWrapper>(this, android.R.layout.select_dialog_item, android.R.id.text1);
router = MediaRouter.getInstance(this);
for (MediaRouter.RouteInfo route: router.getRoutes()) {
if (route.isDefault())
continue;
adapter.add(new RouteInfoWrapper(route));
我想将适配器、回调和路由器对象共享给服务。
解决方案
推荐阅读
- android-studio - 在 Android Studio 中运行所有带有详细信息的 Flutter 测试
- php - Undefined property: Symfony\\Component\\HttpFoundation\\ParameterBag::$product_id"
- javascript - 如何在 Javascript 构造函数中传递参数?
- python - 将未来对象转换为数据形式
- go - 向新客户端发送 Websocket 消息
- reactjs - 如何使用 useState(在 React 中)来防止多次单击 div?
- php - 使用 $ 作为数据定义 PHP 字符串文字
- wolfram-mathematica - 如何将以下 Mathematica 代码转换为 sympy?
- java - 如何将多个按钮组合在一起,以便只有一个按钮可以保持专注?
- node.js - 带有 EP32 客户端的 Nodejs Websocket 服务器