NetChangeLayoutView.java 2.48 KB
package com.wd.player.gesture;

import android.content.Context;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.widget.RelativeLayout;
import android.widget.TextView;

import com.aliyun.svideo.wd.player.R;
import com.wd.common.viewclick.BaseClickListener;
import com.wd.player.control.ControlView;
import com.wd.player.interfaces.ViewAction;
import com.wd.player.widget.AliyunScreenMode;


public class NetChangeLayoutView extends RelativeLayout implements ViewAction {


    // 视频播放状态
    private ControlView.PlayState mPlayState = ControlView.PlayState.NotPlaying;
    // 整个view的显示控制:
    // 不显示的原因。如果是错误的,那么view就都不显示了。
    private HideType mHideType = null;
    // 切换大小屏相关
    private AliyunScreenMode mAliyunScreenMode = AliyunScreenMode.Small;

    private  TextView trafficPlay ;
    public NetChangeLayoutView(Context context) {
        super(context);
        init();
    }

    public NetChangeLayoutView(Context context, AttributeSet attrs) {
        super(context, attrs);
        init();
    }

    public NetChangeLayoutView(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
        init();
    }

    public NetChangeLayoutView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
        super(context, attrs, defStyleAttr, defStyleRes);
        init();
    }

    private void init() {
        // Inflate布局
        LayoutInflater.from(getContext()).inflate(R.layout.layout_net_change, this, true);
         trafficPlay = findViewById(R.id.tv_traffic_play);
    }
    public void setOnClickListener(BaseClickListener baseClickListener){
        trafficPlay.setOnClickListener(baseClickListener);
    }

    @Override
    public void reset() {
        mHideType = null;
    }

    @Override
    public void show() {
     setVisibility(VISIBLE);
    }

    public boolean isShow() {
        return getVisibility() == VISIBLE;
    }
    @Override
    public void hide(HideType hideType) {
        setVisibility(GONE);
    }

    @Override
    public void setScreenModeStatus(AliyunScreenMode mode) {
        mAliyunScreenMode = mode;
    }
    public void setHideType(HideType hideType) {
        this.mHideType = hideType;
    }
    /**
     * 设置当前的播放状态
     *
     * @param playState 播放状态
     */
    public void setPlayState(ControlView.PlayState playState) {
        mPlayState = playState;
    }

}