package com.cr.pages

import android.view.View
import com.cr.data.CrUtil
import com.cr.widget.CrNavigationBarWidget
import com.cr.widget.CrNavigationBarWidget.CrNavigationBarListener

/**
 * 操作系统：MAC系统
 * 创建者：王成
 * 创建日期：2023/3/10 08:51
 * 描述：Fragment 带导航栏的页面基础类
 */
open class CrNavigationFragment : CrAnimationFragment(),CrNavigationBarListener{
    // define: 2023/3/30 导航栏定义
    var nvBar:CrNavigationBarWidget?=null

    /**
     * 设置导航栏
     * @param barId Int 导航栏组件Id
     */
    fun setBar(barId:Int){
        nvBar = mainView!!.findViewById(barId)
        nvBar?.let {
            it.visibility = View.VISIBLE
            it.listener = this
        }
    }

    /**
     * 设置导航栏是否显示
     * @param isVisible Boolean
     */
    fun setBarVisible(isVisible:Boolean){
        nvBar?.let {
            it.visibility = if(isVisible) View.VISIBLE else View.GONE
        }
    }

    /**
     * 覆写导航栏回退监听
     */
    override fun onGotoBack() {
        gotoBack()
    }

    /**
     * 覆写导航栏关闭监听
     */
    override fun onDismiss() {
        dismiss()
    }

    /**
     * 可覆写回退方法
     */
    open fun gotoBack(){

    }

    /**
     * 可覆写关闭方法
     */
    open fun dismiss(){

    }
}