EasyClick 原生UI连载二十七

EasyClick 原生UI连载目录

  • EasyClick 原生UI教程
  • EasyClick 原生UI连载view动态显示日志
    • 效果图
    • xml文件 main.xml
    • ui.js 文件
    • main.js
    • 提示

EasyClick 原生UI教程

讲师:Mr-老鬼,QQ:1156346325
EasyClick 原生UI教程电梯直达:EasyClick 原生UI教程总纲

EasyClick 原生UI连载view动态显示日志

Mr、老冷学员需求,这里记录下。

效果图

EasyClick 原生UI连载二十七_第1张图片

xml文件 main.xml




<ScrollView xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xmlns:android="http://schemas.android.com/apk/res/android"
            xsi:noNamespaceSchemaLocation="layout.xsd"
            android:layout_height="match_parent"
            android:layout_width="match_parent">
    <LinearLayout android:layout_height="match_parent"
                  android:layout_width="match_parent"
                  android:orientation="vertical"
                  android:padding="20dp">
        <TextView android:layout_width="match_parent"
                  android:layout_height="wrap_content"
                  android:text="日志演示页面"
                  android:textSize="20sp" />
        <TextView android:layout_width="match_parent"
                  android:layout_height="0dp"
                  android:layout_weight="1"
                  android:text="日志"
                  android:textSize="14sp"
                  android:tag="laoguilog"
                  android:maxLength="100" />

    LinearLayout>
ScrollView>

ui.js 文件

/*
 * Copyright(c) 2021,
 *    文件名称:ui.js
 *    创建时间:2021/4/26 下午1:18
 *    作者:laogui
 */

function main() {
     
    ui.layout("参数设置", "main.xml");
    importPackage(android.widget);
    importPackage(android.graphics);
    importPackage(android.view);
    importPackage(android.text);
    let tv =  ui.laoguilog;
    tv.setSingleLine(false);
    //tv.setText("");
}
main();

main.js

/*
 * Copyright(c) 2021,
 *    文件名称:main.js
 *    创建时间:2021/4/26 下午1:18
 *    作者:laogui
 */

function main() {
     
    //如果自动化服务正常
    if (!autoServiceStart(3)) {
     
        logd("自动化服务启动失败,无法执行脚本")
        exit();
        return;
    }
    importPackage(android.widget);
    importPackage(android.graphics);
    importPackage(android.view);
    importPackage(android.text);
    logd("开始执行脚本...")
    let msg = "";
    ui.resetUIVar();

    for (let i = 0, end = 100; i < end; i++) {
     
        msg = "当前运行第" + i + "次\n"+msg;
        laoGuiLog(ui.laoguilog, "i", msg);
        sleep(2000);

    }
}

/**
 * view 日志封装
 * @param view  传一个textview对象
 * @param msg  传日志信息
 * @debugModel  调试等级 a,d,e,i,v,w
 */
function laoGuiLog(view, debugModel, msg) {
     
    ui.run(1000, function (View) {
     
        view.setSingleLine(false);
        switch (debugModel) {
     
            case "a":
                view.setTextColor(Color.rgb(255, 152, 30));
                logd(msg);
                break;
            case "d":
                view.setTextColor(Color.rgb(35, 47, 182));
                logd(msg);
                break;
            case "e":
                view.setTextColor(Color.rgb(255, 48, 31));
                loge(msg);
                break;
            case "i":
                view.setTextColor(Color.rgb(89, 187, 109));
                logi(msg);
                break;
            case "v":
                view.setTextColor(Color.rgb(187, 187, 187));
                logd(msg);
                break;
            case "w":
                view.setTextColor(Color.rgb(187, 172, 97));
                logw(msg);
                break;
            default :
                view.setTextColor(Color.rgb(35, 47, 182));
                logd(msg);
                break;
        }
        view.setText(msg);
    })

}

function autoServiceStart(time) {
     
    for (var i = 0; i < time; i++) {
     
        if (isServiceOk()) {
     
            return true;
        }
        var started = startEnv();
        logd("第" + (i + 1) + "次启动服务结果: " + started);
        if (isServiceOk()) {
     
            return true;
        }
    }
    return isServiceOk();
}

main();

提示

行数不宜太多,500以内
根据使用场景动态调整代码。

我是Mr-老鬼、QQ1156346325 。交流QQ群:620028786,647082990
------------------------------------------------版权声明------------------------------------------------------
本文版权所有~Mr-老鬼 ~转载请注明原文地址
免责声明:本文所有的教程仅限交流学习使用不得用于违法用途,造成的法律后果本人不承担责任。

你可能感兴趣的:(Easy,Click,原生,UI,系列,android)