直播平台搭建,控制状态栏通知面板自动展开和收起

本文介绍了如何在直播平台搭建中控制状态栏通知面板的自动展开和收起。通过在NotificationPanelView中设置监听接口,实现在面板展开和收起时的回调。当面板展开完成时调用onPanelOpened(),收起时调用onPanelCollapsed(),并在触摸事件中回调onPanelTouch()方法,阻止面板自动收起。此功能增强了直播平台的交互体验。

直播平台搭建,控制状态栏通知面板自动展开和收起
首先需要在NotificationPanelView中增加监听接口:

private OnPanelChangedListener mOnPanelChangedListener;

public void setOnPanelChangedListener(OnPanelChangedListener listener) {
    mOnPanelChangedListener = listener;
}

public interface OnPanelChangedListener {
    void onPanelCollapsed();
    void onPanelOpened();
    void onPanelTouch(int action);
}

接着在面板展开onExpandingFinished和onClosingFinished时回调展开和收起的状态。

@Override
protected void onExpandingFinished() {
    super.onExpandingFinished();
    ...此处代码省略
    if (mOnPanelChangedListener != null) {
        mOnPanelChangedListener.onPanelOpened();
    }
}

@Override
protected void onClosingFinished() {
    super.onClosingFinished();
    resetVerticalPanelPosition();
    setClosingWithAlphaFadeout(false);
    if (mOnPanelChangedListener != null) {
        mOnPanelChangedListener.onPanelCollapsed();
    }
}

面板触摸时不能自动收起,需要重写dispatchTouchEvent方法并回调监听:

@Override
public boolean dispatchTouchEvent(MotionEvent ev) {
    if (mOnPanelChangedListener != null) {
        mOnPanelChangedListener.onPanelTouch(ev.getAction());
    }
    return super.dispatchTouchEvent(ev);
}

以上就是直播平台搭建,控制状态栏通知面板自动展开和收起, 更多内容欢迎关注之后的文章

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值