要实现在 Android Fragment 中奇数次点击 VideoView 播放视频,偶数次点击停止播放,可以通过以下步骤来实现:
1.布局文件 (fragment_layout.xml):
确保在你的 Fragment 布局文件中包含一个 VideoView 控件,例如:
〈VideoView
android:id="@+id/videoView"
android:layout_width="match_parent"
android:layout_height="wrap_content" /〉
2.Fragment 类 (MyFragment.java):
在你的 Fragment 类中,获取 VideoView 控件的引用,并设置点击事件监听器。
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.VideoView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
public class MyFragment extends Fragment {
private VideoView videoView;
private int clickCount = 0;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_layout, container, false);
videoView = rootView.findViewById(R.id.videoView);
// 设置点击事件监听器
videoView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
clickCount++;
if (clickCount % 2 == 1) {
// 奇数点击,播放视频
playVideo();
} else {
// 偶数点击,停止播放视频
stopVideo();
}
}
});
return rootView;
}
private void playVideo() {
// 设置视频路径,这里假设视频路径已经设置好
String videoPath = "/path/to/your/video.mp4";
videoView.setVideoPath(videoPath);
videoView.start(); // 开始播放视频
}
private void stopVideo() {
if (videoView.isPlaying()) {
videoView.stopPlayback(); // 停止播放视频
}
}
}
在上面的代码中:
1.clickCount 变量用于跟踪点击次数。
2.在 onClick() 方法中,每次点击 VideoView 都会增加 clickCount。
3.如果 clickCount % 2 == 1,即奇数次点击,则调用 playVideo() 方法开始播放视频。
4.如果 clickCount % 2 == 0,即偶数次点击,则调用 stopVideo() 方法停止视频播放。
通过这种方法,你可以在 Fragment 中实现根据点击次数控制视频播放和停止的功能。