在一个活动中,当我向我刚刚使用的服务发送意图时sendBroadcast
,我不能从片段中执行相同的操作,因为片段必须是静态类。处理这个问题的最佳方法是什么?
我考虑过有一个接收上下文的方法,但这在片段的情况下不起作用。
目前我的代码是
public static class ExampleSectionFragment extends Fragment {
public static final String ARG_SECTION_NUMBER = "section_number";
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_section_example, container, false);
Bundle args = getArguments();
//Example intent to broadcast to service on button press
rootView.findViewById(R.id.action_start)
.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(RECORDING_INTENT);
sendBroadcast(intent);
}
});
return rootView;
}
}
sendBroadcast 在 eclipse 中返回错误:
无法从 ContextWrapper 类型对非静态方法 sendBroadcast(Intent) 进行静态引用