textwatcher:autojs世界记忆大师都在用的方法

 2021-07-08 14:10    77  

牙叔教程 简单易学

textwatcher:autojs世界记忆大师都在用的方法

textwatcher:autojs世界记忆大师都在用的方法

使用场景

记忆数字

世界记忆大师数字项目的训练分三个步骤textwatcher:出图、联结和记忆。

每个编码都在脑子里呈现出清晰textwatcher、完整、立体、生动、有感觉的图像,还可以是动态的。

不仅要看到它的样子,还要听到它的声音textwatcher、闻到它的味道、感受它的触觉,用各种感官去理解编码、感受编码。

在记忆的时候,一定要做到以下几点:清晰,奇特,动态,连贯!

如果你的图象不清晰,在你记忆的过程中就像是看屏幕不清晰的电视,当你回忆这段情景的时候,因为屏幕的不清晰,很多细节都被你忽略了,所以容易忘记。越是离奇的事物越容易加深人们的印象。

效果展示

autojs版本8.7.7-0

代码简介脚本提供了一个数据库, 里面有图片, 1-100界面有一个输入框, 用来输入数字输入数字后, 会自动显示数字对应的图片两个数字为一组, 比如12为一张图片, 34位一张图片, 会自动以2位为一组, 切割数字

代码讲解1. 停止其他脚本engines.all().map((ScriptEngine) => { if (engines.myEngine().toString() !== ScriptEngine.toString()) { ScriptEngine.forceStop(); }});

2. 导入类importClass(Packages.androidx.recyclerview.widget.RecyclerView);importClass(Packages.androidx.recyclerview.widget.LinearLayoutManager);importClass(android.graphics.drawable.BitmapDrawable);

3. 界面布局ui.layout( <vertical margin="9"> <horizontal> <text text="手机号"></text> <input id="mobile" hint="只能输入数字" w="*" digit="1234567890"></input> </horizontal> <androidx.recyclerview.widget.RecyclerView id="dataList" h="*" w="*" /> </vertical>);

4. recycleView布局let boxXml = ( <vertical w="*" padding="8" marginTop="6"> <img id="img"></img> <horizontal margin="20"> <text id="name" w="*" gravity="center" textSize="25sp" textStyle="bold"> 名字 </text> </horizontal> </vertical>);

5. 设置recycleView的布局管理器layoutManager = new LinearLayoutManager(context);recyclerView.setLayoutManager(layoutManager);

6. 设置recycleView的adapterlet recycleAdapter = createGiftBoxAdapter(dataList);recyclerView.setAdapter(recycleAdapter);

7. 设置输入框监听ui.mobile.addTextChangedListener( new android.text.TextWatcher({ afterTextChanged: function (content) { 根据输入框中的内容修改dataList(content); }, }));

8. 退出时释放资源, 关闭数据库events.on("exit", function () { db && db.close();});

9. 打开数据库const TableName = "IMGDATA";// 表名: IMGDATA// 字段1 id 整数 主键 自增// 字段2 name 字符串 不可为空// 字段3 img BLOB byteslet db = sqlite.open( "/sdcard/脚本/memoryData.db", { version: 1 }, { onOpen: function (db) { db.execSQL( "CREATE TABLE IF NOT EXISTS " + TableName + "(" + "`id` INTEGER PRIMARY KEY AUTOINCREMENT, " + "`name` TEXT NOT NULL UNIQUE, " + "`img` BLOB" + ")" ); }, });

10. 查找数字对应的图片信息function 查找数字对应的图片信息(num) { let dataList = getAllDataName(); var len = dataList.length; for (var i = 0; i < len; i++) { let item = dataList[i]; if (item.name.indexOf(num) === 0 && item.name.replace(/\D/g, "").length === num.length) { let data = db.rawQuery("SELECT * FROM " + TableName + " WHERE id = ?", [item.id]).single(); return data; } } db.close(); db = null; throw new Error("没有找到图片");}

11. 根据输入框中的内容修改dataListfunction 根据输入框中的内容修改dataList(content) { if (!content) { return false; } content = content.toString(); let num = 2; let arr = reSetData(content, num); dataList.splice(0, dataList.length); var len = arr.length; for (var i = 0; i < len; i++) { let item = arr[i]; dataList.push(formatData(item)); } recycleAdapter.notifyDataSetChanged(); ui.dataList.post(function () { ui.dataList.smoothScrollToPosition(dataList.length); });}

12. 根据输入框中的内容修改dataListfunction createGiftBoxAdapter(dataList) { return RecyclerView.Adapter({ onCreateViewHolder: function (parent, viewType) { // 视图创建 let view; let holder; view = ui.inflate(boxXml, parent, false); holder = JavaAdapter(RecyclerView.ViewHolder, {}, view); return holder; }, onBindViewHolder: function (holder, position) { // 数据绑定 let data = dataList[position]; // holder.itemView.img.attr("src", "file://" + data.img); let img = images.fromBytes(data.img); let drawable = new BitmapDrawable(img.bitmap); holder.itemView.img.setImageDrawable(drawable); holder.itemView.name.setText(data.name); }, getItemCount: function () { return dataList.length; }, });}声明部分内容来自网络

本文标签:在用

原文链接:https://www.xgfox.com/kfbc/634.html

本文版权:如无特别标注,本站文章均为原创。