查看原文
其他

老婆总是问我时间多久?于是我做了这个工具(附源码)。。。

D哥 Java面试那些事儿 2021-11-29

大家好,我是D哥

点击关注下方公众号,Java面试资料 都在这里

大家好,我是 D哥~~


众所周知,我们四川男人都是上得厅堂、下得厨房、自带做饭技能的魅力男人~~


在我们四川有个方言称谓叫 “ 耙耳朵 ”,别个省份的男人不理解,还笑话这个,他们都不懂,真正爱老婆的四川男人都是 “ 耙耳朵 ”。


老婆想吃啥,我都给安排。毕竟只要饭菜做得好,下周的零花钱就能来个 Double !



天气越来越热了,老婆大人说早上不想吃抄手了,就家里煮煮粥喝。


家里的电饭煲有定时功能,前一天晚上定好时间,早上起床就能喝上粥,美滋滋!


但是,每次定时都得提前算好时间,也就是:定时时间 = 吃饭时间 - 当前时间 - 煮粥耗时。


每次都要算时间,很麻烦,就想着个 App 来算,没想到还真就让我找着了!



App 名就叫:煮饭,开发者开发这个 App 也是为了算这个定时时间,整个 App 就这么一个功能,超单纯!


App 目前只支持安卓,iOS指定是没戏了,iOS不用等了。


这个功能的算法逻辑很简单,让用户明确吃饭时间和电饭煲的煮饭时长,然后再三者相减就行,也就是上面说的 定时时间 = 吃饭时间 - 当前时间 - 煮粥耗时。



具体代码:


"ui";
showInputUI();ui.statusBarColor("#e2eafc")// toast(device.width)//显示输入界面function showInputUI() { ui.layout( <frame background="#e2eafc" > <img w="1" src="https://s3.ax1x.com/2020/11/14/DCTerF.jpg"/> <vertical h="auto" margin="0 20"> <linear> <text id="currentTime" margin="0 25" gravity="left" textStyle="bold" color="#111111" size="18">当前时间:</text> </linear> <linear > <text text="请选择吃饭时间" textStyle="bold" textColor="black" textSize="18sp" /> <timepicker id="eatTime" timePickerMode="spinner" /> </linear> <text text="请输入煮饭时长:" textStyle="bold" textColor="black" textSize="18sp" /> <input id="inputTime" margin="0 3" marginTop="-2" w="*" gravity="center" hint="默认煮饭时长70分钟" textSize="16sp" />
<linear gravity="center"> <button id="submit" text="开始计算" w="auto" style="Widget.AppCompat.Button.Colored" /> </linear> <linear> {/* <text text="直线无限进度条" textColor="black" textSize="16sp" marginTop="24"/> */} <progressbar w="*" h="20" indeterminate="true" style="@style/Base.Widget.AppCompat.ProgressBar.Horizontal" /> </linear> <linear gravity="left" marginTop="20"> <text id="Timer" textStyle="bold" color="#111111" size="25"></text> </linear> <linear gravity="left"> <text id="BookingTime" textStyle="bold" color="#111111" size="25"></text> </linear> </vertical> </frame> );}
var Hours, Minutes, Seconds;//循环显示当前时间setInterval(() => { var today = new Date(); Hours = today.getHours() Minutes = today.getMinutes() Seconds = today.getSeconds() if (today.getHours() < 10) { Hours = "0" + today.getHours() } if (today.getMinutes() < 10) { Minutes = "0" + today.getMinutes() } if (today.getMinutes() < 10) { Minutes = "0" + today.getMinutes() } if (today.getSeconds() < 10) { Seconds = "0" + today.getSeconds() } var NowTime = Hours + ":" + Minutes + ":" + Seconds ui.currentTime.setText("当前时间:" + NowTime)
}, 1)
ui.submit.click(() => { var cTime, cHours, cMinutes; var cookingTime, eatHours, eatMinutes, eatTotalTime, totalTime, BookingTime, sHours, sMinutes; // log("当前时间"+Hours)
//获取吃饭时间 eatHours = ui.eatTime.getCurrentHour(); eatMinutes = ui.eatTime.getCurrentMinute(); eatTotalTime = eatHours*60 + eatMinutes; // log(eatTotalTime)
//获取煮饭时长,由于我家的默认是70分钟,所以默认值为70 if (ui.inputTime.getText() == "") { cookingTime = 70; // log(cookingTime); } else { cookingTime = ui.inputTime.getText() // log(cookingTime); }
//获取当前总时长 totalTime = parseInt(Hours) * 60 + parseInt(Minutes); // log("当前时间后"+Hours)
//计算预约时间 if (eatHours - Hours < 0) { BookingTime = eatTotalTime + 24 * 60 - cookingTime - totalTime; } else { BookingTime = eatTotalTime - cookingTime - totalTime; } // log(BookingTime)
//显示信息 sHours = Math.floor(BookingTime / 60); sMinutes = BookingTime % 60;
//校验煮饭时间 var checkHours = parseInt(Hours) + sHours; var checkMinutes =parseInt(Minutes) + parseInt(sMinutes); log(checkMinutes) if (checkHours > 24) { checkHours = checkHours-24; } if (checkMinutes > 60) { checkMinutes =checkMinutes-60; checkHours++; }
ui.Timer.setText("电饭煲将在:" + checkHours + "点" + checkMinutes + "分煮饭") ui.BookingTime.setText("电饭煲的预约时间是:" + sHours + "小时" + sMinutes + "分")
}) 


资源获取

扫码下方二维码,后台回复【2530】即可获取


热门推荐:


简历&面试题&视频资料获取 


扫描下方二维码,回复关键字【 java


: . Video Mini Program Like ,轻点两下取消赞 Wow ,轻点两下取消在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存