Skip to content

Fessible/SimpleNiceVideoPlayer

Repository files navigation

SimpleNiceVideoPlayer

简化版的NiceVideoPlayer,主要用于学习自定义视频播放器,原地址https://github.com/xiaoyanger0825/NiceVieoPlayer

使用方式

添加权限,添加configChanges,转换为全屏显示时不重新绘制

    <uses-permission android:name="android.permission.INTERNET" />

    <activity
            android:name=".NormalActivity"
            android:configChanges="orientation|keyboardHidden|screenSize"
            android:screenOrientation="portrait" />

正常显示方式

public class NormalActivity extends AppCompatActivity {
    private NiceVideoPlayer niceVideoPlayer;
    public String url = "http://tanzi27niu.cdsb.mobi/wps/wp-content/uploads/2017/05/2017-05-17_17-33-30.mp4";
    public String imgUrl = "http://tanzi27niu.cdsb.mobi/wps/wp-content/uploads/2017/05/2017-05-17_17-30-43.jpg";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_normal_layout);
        niceVideoPlayer = findViewById(R.id.nice_video_player);

        TxVideoPlayerController controller = new TxVideoPlayerController(this);
        niceVideoPlayer.setController(controller);
        controller.setUrl(url);
        controller.setTitle("呵呵呵");
    }

    @Override
    public void onBackPressed() {
        if (NiceVideoPlayerManager.instance().onBackPressd()) return;
        super.onBackPressed();
    }

    @Override
    protected void onStop() {
        super.onStop();
        NiceVideoPlayerManager.instance().releaseNiceVideoPlayer();
    }
}

布局文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.com.simplenicevideoplayer.MainActivity">

    <com.example.com.videoplayer.NiceVideoPlayer
        android:id="@+id/nice_video_player"
        android:layout_width="match_parent"
        android:layout_height="200dp"/>

</LinearLayout>

列表使用方式

注意:添加回收

  recyclerView.setRecyclerListener(new RecyclerView.RecyclerListener() {
            @Override
            public void onViewRecycled(RecyclerView.ViewHolder holder) {
                if (holder instanceof TestAdapter.ViewHolder) {
                    NiceVideoPlayer niceVideoPlayer = ((TestAdapter.ViewHolder) holder).niceVideoPlayer;
                    if (niceVideoPlayer == NiceVideoPlayerManager.instance().getCurrentNiceVideoPlayer()) {
                        NiceVideoPlayerManager.instance().releaseNiceVideoPlayer();
                    }
                }
            }
        });

详细构建

简化版SimpleNiceVideoPlayer详细解析CSDN

简化版SimpleNiceVideoPlayer详细解析个人网站

About

简化版的NiceVideoPlayer,主要用于学习自定义视频播放器,原地址https://github.com/xiaoyanger0825/NiceVieoPlayer

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages