This commit is contained in:
zhongchao
2022-11-11 18:07:24 +08:00
parent 5489eed272
commit e52ba22a56
14 changed files with 104 additions and 134 deletions

View File

@@ -0,0 +1,75 @@
package com.mogo.eagle.core.function.api.hmi.view
import android.view.View
import android.widget.FrameLayout
import com.alibaba.android.arouter.facade.template.IProvider
/**
* 根据优先级控制显示 window view.
*/
interface IViewLayoutSet : IProvider{
/**
* 向window中添加指定的布局不考虑优先级
*
* @param view 添加的实例
* @param x 左上角x坐标
* @param y 左上角y坐标
* @param movable 是否可移动(无效)
*/
fun addView(view: View, x: Int, y: Int, movable: Boolean)
/**
* 向window中添加指定的布局不考虑优先级
*
* @param view 添加的实例
* @param params 布局参数
* @param movable 是否可移动(无效)
*/
fun addView(view: View, params: FrameLayout.LayoutParams, movable: Boolean)
/**
* 向window中添加指定的布局优先级大的展示
*
* @param priority 优先级
* @param view 添加的实例
* @param x 左上角x坐标
* @param y 左上角y坐标
* @param movable 是否可移动(无效)
*/
fun addView(priority: Int, view: View, x: Int, y: Int, movable: Boolean)
/**
* 向window中添加指定的布局优先级大的展示
*
* @param priority 优先级
* @param view 添加的实例
* @param params 布局参数
* @param movable 是否可移动(无效)
*/
fun addView(priority: Int, view: View, params: FrameLayout.LayoutParams, movable: Boolean)
/**
* 移除对应的 view
*
* @param view
*/
fun removeView(view: View)
/**
* 隐藏所有
*/
fun hideAll()
/**
* 显示所有
*/
fun showAll()
/**
* 为了配合导航动画主屏上方1/2屏的view通过此方法添加
* @param view 主屏上方1/2屏的view
*/
fun addTopView(view: View)
}