这是片段类
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View layoutView = inflater.inflate(R.layout.fragment_lyrics,
container, false);
int hymnNo = fragVal - 1;
//Database
final MediaPlayer p = MediaPlayer.create(getActivity(), R.raw.s);
final ToggleButton playPauseButton =
(ToggleButton)layoutView.findViewById(R.id.playpause);
playPauseButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
if (playPauseButton.isChecked() ){
p.start();
}else{
p.pause();
}
}});
我有事情要考虑..一旦我转到另一个片段,我的这个片段中的媒体播放器怎么能停止?并完全重置它(当前片段),这意味着我的切换按钮也将处于默认位置?我试过了
public void onDetach()
{
getActivity().finish();}
它不起作用..我的想法是销毁所有不可见的碎片。我也尝试使用可见性,但我不知道如何在片段生命周期中调用媒体播放器(即 p.release() 或 p.stop(),例如 onDestroy 或 onDetach ..请帮助me guyz ..我有想法,但不知道该怎么做。