c-brain-glass/base
徐勤民 f47d9ee047 feat(webview): 将文本显示改为WebView组件并支持HTML内容展示
- 将activity_fo.xml中的TextView替换为WebView组件
- 在XWebViewActivity中添加content参数用于传递HTML内容
- 实现当URL为空时通过loadData方法加载HTML内容的功能
- 添加startWebNoTopBarForContent方法支持无顶部栏的内容展示
- 设置WebView背景色为黑色以匹配应用主题
- 添加ToolsHelper工具类用于判断URL是否为空
2026-04-15 14:32:25 +08:00
..
src/main feat(webview): 将文本显示改为WebView组件并支持HTML内容展示 2026-04-15 14:32:25 +08:00
.gitattributes init 2026-04-13 16:37:34 +08:00
.gitignore init 2026-04-13 16:37:34 +08:00
build.gradle init 2026-04-13 16:37:34 +08:00
consumer-rules.pro init 2026-04-13 16:37:34 +08:00
proguard-rules.pro init 2026-04-13 16:37:34 +08:00
README.md init 2026-04-13 16:37:34 +08:00

[TOC]

WebSocket

WebSocketHandler.getInstance("ws://192.168.3.20:8765")

线程

UI线程执行

runOnUiThread { "提示信息".showMessage() }
App.getInstance().runOnUiThread() {}

延时执行

App.getInstance().runOnUiThreadDelay({},1100) 

常用工具

Toast

"连接完成".showMessage()
ToolsHelper.showMessage("")

Log

"".loge()
"".log()
LogHelper.d("")

常用方法

双击退出


    private var oldTime = 0L
    override fun onBackPressed() {
        val newTime = System.currentTimeMillis()
        if (newTime - oldTime < 1500 && oldTime != 0L)
            AppManager.getInstance().exit()
        else {
            oldTime = newTime
            ToolsHelper.showMessage("双击退出")
        }
    }

界面

所有界面继承BaseFragment,BaseActivity,BaseListActivity

页面layout跟节点必须为layout

<layout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
</layout>

列表页面

纯列表

BaseListActivity

自定义布局列表

BaseListFormLayoutActivity

布局列表部分必须使用下面的方法和id

<androidx.swiperefreshlayout.widget.SwipeRefreshLayout
    android:id="@+id/baseRefreshLayout"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <com.xuqm.base.view.EmptyView
        android:id="@+id/baseEmptyView"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <androidx.recyclerview.widget.RecyclerView
            android:id="@+id/baseRecyclerView"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:overScrollMode="never" />

    </com.xuqm.base.view.EmptyView>

</androidx.swiperefreshlayout.widget.SwipeRefreshLayout>

界面控件使用

binding.btn1.setOnClickListener {
    
}

导航栏

使用base自带导航栏的情况下,可以操控对应控件

baseBinding.baseToolbar.backBtn.setOnClickListener {}