增加AI数据采集入口
This commit is contained in:
xuxinchao
2022-07-14 14:34:31 +08:00
parent ac56acfed3
commit 01bf5d63a5
9 changed files with 75 additions and 10 deletions

View File

@@ -79,7 +79,11 @@ class DevaToolsProvider : IDevaToolsProvider {
}
override fun initBadCase(view: View) {
BadCaseManager.init(view)
BadCaseManager.initBadCase(view)
}
override fun initAiCollect(view: View) {
BadCaseManager.initAiCollect(view)
}
override fun onReceiveBadCaseRecord(record: RecordPanelOuterClass.RecordPanel) {

View File

@@ -100,6 +100,42 @@ internal object BadCaseManager : LifecycleEventObserver {
}
}
fun initBadCase(view: View){
val activity = view.context as? FragmentActivity ?: throw IllegalStateException("please ensure context is FragmentActivity.")
view.setOnClickListener {
if(ClickUtils.isFastClick()){
initiativeBadCaseWindow = InitiativeBadCaseWindow(activity)
initiativeBadCaseWindow?.setClickListener(object: InitiativeBadCaseWindow.ClickListener{
override fun closeWindow() {
initiativeBadCaseWindow?.hideFloatWindow()
}
})
initiativeBadCaseWindow?.showFloatWindow()
}else{
ToastUtils.showShort("请勿连续点击,稍后再试")
}
}
}
fun initAiCollect(view: View){
val activity = view.context as? FragmentActivity ?: throw IllegalStateException("please ensure context is FragmentActivity.")
view.setOnClickListener {
if(ClickUtils.isFastClick()){
aiDataCollectWindow = AIDataCollectWindow(activity)
aiDataCollectWindow?.setClickListener(object: AIDataCollectWindow.ClickListener{
override fun closeWindow() {
aiDataCollectWindow?.hideFloatWindow()
}
})
aiDataCollectWindow?.showFloatWindow()
}else{
ToastUtils.showShort("请勿连续点击,稍后再试")
}
}
}
fun init(view: View) {
this.viewHolder = WeakReference(view)
view.lifecycleOwner.lifecycle.addObserver(this)

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

View File

@@ -4,5 +4,5 @@
<item android:drawable="@drawable/icon_bad_case_select" android:state_focused="false" android:state_pressed="true" />
<item android:drawable="@drawable/icon_bad_case_select" android:state_selected="true" />
<item android:drawable="@drawable/icon_bad_case_select" android:state_focused="true" />
<item android:drawable="@drawable/icon_ai_normal" />
<item android:drawable="@drawable/icon_bad_case_normal" />
</selector>

View File

@@ -391,7 +391,8 @@ import kotlin.collections.ArrayList
// 控制 BadCase 按钮展示
if (HmiBuildConfig.isShowBadCaseView) {
CallerDevaToolsManager.initBadCase(badCaseToolsView)
CallerDevaToolsManager.initBadCase(ivBadCaseTools)
CallerDevaToolsManager.initAiCollect(ivAiCollectTools)
}
// 控制 红绿灯 展示

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

View File

@@ -108,15 +108,26 @@
app:layout_goneMarginStart="50px" />
<!--问题反馈-->
<com.zhjt.mogo_core_function_devatools.badcase.biz.BadCaseToolsView
android:id="@+id/badCaseToolsView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
<ImageView
android:id="@+id/ivBadCaseTools"
android:layout_width="120px"
android:layout_height="120px"
android:src="@drawable/bad_case_selector"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toEndOf="@id/ivToolsIcon"
android:layout_marginStart="50px"
android:layout_marginBottom="40px"
/>
<ImageView
android:id="@+id/ivAiCollectTools"
android:layout_width="120px"
android:layout_height="120px"
android:src="@drawable/ai_collect_selector"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toEndOf="@+id/ivToolsIcon"
app:layout_goneMarginStart="50px"
app:layout_constraintStart_toEndOf="@id/ivBadCaseTools"
android:layout_marginStart="50px"
android:layout_marginBottom="40px"
/>
<View

View File

@@ -73,10 +73,16 @@ interface IDevaToolsProvider : IProvider {
/**
* 初始化BadCase入口
* @param view: 展示入口
* @param view: BadCase入口视图
*/
fun initBadCase(view: View)
/**
* 初始化AI数据采集
* @param view: AI数据采集入口视图
*/
fun initAiCollect(view: View)
/**
* 当工控机回调时调用
*/

View File

@@ -109,6 +109,13 @@ object CallerDevaToolsManager {
devaToolsProviderApi?.initBadCase(view)
}
/**
* 初始化AI数据采集
*/
fun initAiCollect(view: View){
devaToolsProviderApi?.initAiCollect(view)
}
/**
* 收到工控机回调时触发
*/