- 博客(2894)
- 资源 (44)
- 收藏
- 关注
原创 鸿蒙OS应用开发的开发环境
当你想投入到这个生态系统里的时候,首先是使用它,这是最方便的方法,比如买一台带有鸿蒙系统的手机,并且不断地使用它,提出你自己的建议,让它进行完善和改进。在这里主要开始学习开发鸿蒙系统的应用,由于鸿蒙系统发布的时间不是很久,当然是相对安卓和IOS来说,因此它是一个全新的系统,并且致力于创建一种更方便的软件方式,它引入不同于以往的软件开发语言,以及不同的界面接口。这时候,就可以看到应用的名称,包的名称,保存的位置,编译的SDK版本,运行模式,是否可视化编辑,语言,兼容性API,设备类型。
2023-12-07 12:31:53 468
原创 鸿蒙OS应用开发之多图片动画组件
前面终于把图片显示组件学习完成了,因为图片显示是比较常用的组件,常常需要把图片当作界面元素来显示出来。图片组件可以显示GIF动画,这样对于一直播放,或者方便制作成GIF动画的应用是没有问题的。不过,在这里也提供了一个基于普通PNG图片的动画,或者叫做帧动画。也就是把多张PNG图片添加到这个组件,然后就可以设置播放、暂停、重复播放等动作,这是一个可以自己控制动画运转过程的方法。这个设置了动画组件播放的资数,默认值是只播放一次。上面的例子只使用了string这个参数就可以从资源里输入图片,其它参数都没有设置。
2024-03-18 11:09:12 17
原创 OpenHarmony4.0对RK3566的烧写过程
前面已经编译的过程搞了比较长的时间,因为遇到了不少问题,老是编译出错,后来经过努力还是编译成功了。然后点击最右边空白那一行,修改为自己位置的文件,把上面编译出来的文件设置到这里,由于这个板出厂后,都带有系统,所以采用LOADER加载即可。这时候,就可以加载磁盘分区的配置文件:config.cfg。驱动安装,在设备管理器中选中设备点右键加载对应的驱动。有了这些文件,就可以对开发板进行烧录进去。最后点击执行,就会烧写入去了。最后运行就像这个图片。
2024-03-17 12:32:16 88
原创 鸿蒙OS应用开发之显示图片组件12
前面学习了图片简单滤镜处理,接着下来对图片组件的事件响应进行学习。因为加载图片时,大多数都是采用异步的方式来加载图片,这样当图片加载失败时就无法及时知道,需要查看出错信息。这里采用syncLoad方法来设置为同步加载图片,不过当图片比较大,或者网络上加载图片时,就会导致页面卡死,用户体验不好。因此常常采用异步的方式比较好,这时就需要采用两个事件来通知加载成功或失败。这两个事件是:onComplete事件和onError事件。
2024-03-12 10:31:56 41
原创 鸿蒙OS应用开发之显示图片组件11
前面学习了像素降级处理的方法,这样方便一个图片可以显示在不同大小屏幕的技术,同样不会失真。图片处理是一个很范的名词,一般来说图片处理都会采用预处理的方法,比如在电脑上采用图形处理软件进行处理,然后再使用到手机的软件显示,这样可以减少处理计算。不过,如果有一些特殊的图片,需要在手机上进行处理之后才能应用,那么就不能采用预处理的方法了。采用输入一个4X5的矩阵来转换图片,当我们想变换图片的颜色时,就可以定义一个矩阵,然后把这个矩阵输入到方法里,就可以把图片进行处理了。可见背景的白色就透过来了。
2024-03-11 11:07:08 44
原创 编译OpenHarmony出错小结 FAILED: load BTF from vmlinux: Unknown error -22
在编译开源鸿蒙系统4.0版本时,遇到了不少问题,由于之前对于这个系统了解少,也不太确定是哪里出问题,所以走了不少弯路。一开始就尝试使用WSL来进行编译,这样可以省了虚拟机的安装,但是测试了一下,发现编译不通过,老是出错,这条路看来是走不通了,只能另外想办法。接着下来还是选择安装虚拟机的方式。虚拟机又有很多种,最后选择了VirtualBox,这样安装就比较方便了。我的电脑系统是WIN11作为主机操作系统,然后安装VirtualBox,并对它进行配置。在配置的过程中,也吃了不少亏。
2024-03-08 10:30:32 189
原创 鸿蒙OS应用开发之显示图片组件10
前面学习设置图片的黑白转换,这样适合应用在特殊日子里进行表示不同的感情。由于原来的图片分辨率很高,但是显示的区域很小,这时候就需要降低分辨率,以便运行的速度更快。因为分辨大的图片会比较占用内存,如果加载很多高分辨率的图片,就会导致内存过大,每次刷新就会使用大量的CPU资源,导致手机比较费电。这个方法只有当设置的参数大小比原来图片大小更小时才会起作用,并且SVG和PixelMap图片不支持这个方法进行变换。在这个方法里,输入两个参数,这个参数就是新的分辨率大小,这样在解码图片时就会降低图片占用的空间。
2024-03-04 09:29:59 49
原创 鸿蒙OS应用开发之显示图片组件9
前面学习了图片可以重复地铺满窗口的方法,这样可以使用背景图片的方式。接着下来,我们学习图片进行黑白处理。很多情况下,我们都是采用彩色图片进行显示的。不过,也有特殊的时候,比如某些特殊的日子,就需要把界面上所有采色图片改变为黑色图片显示,这样表示隆重。在APP里怎么样快速地进行这种转换呢?其实只需要改变一下属性就可以了。因此当界面上很多图片时,就可以一键切换这个属性值,就可以达到一键切换图片显示方式。
2024-02-28 09:46:16 50
原创 鸿蒙OS应用开发之显示图片组件8
如果想作为窗口的背景图片,又或者重复地铺满整个窗口,那么就需要使用图片重复的功能。前面学习了图片简单的插值方法,这样可以让不合适的分辨率的图片,可以随着客户的放大或缩小进行合适插值运算,从而让图片看起来更加舒服,更加美观。根据上面的参数,我们就可以根据自己的需求来选择不同方向上进行重复的显示。// 在水平轴和竖直轴上同时重复绘制图片。// 只在水平轴上重复绘制图片。// 只在竖直轴上重复绘制图片。它会把整个空间都填满图标,比较适合背景的填充。可以看到在X轴方向排列了三个图标。
2024-02-27 11:56:15 41
原创 鸿蒙OS应用开发之显示图片组件7
前面学习了网络图片通过HTTP下载,并且创建为pixelMap的位图数据,这样就可以进行图片处理,比如进行旋转、修改等等。对于这些图片处理是比较复杂的,如果不使用这么高级的内容,那么就可以使用低级一点的图片处理,比如插值运算。由于各种原因,当图片进行放大时,一般会产生锯齿显示,因为图片的分辨率不够导致的。这时候,就可以使用图片内部插值算法来进行平滑,让用户看到图片更加清晰,更好友好。可以看到左图不进行插值时,会看到很我锯齿状的边缘,右图进行轻微的插值运算,就好看很多了。是不使用插值,第二种。
2024-02-23 11:28:50 73
原创 鸿蒙OS应用开发之显示图片组件6
前面学习了怎么样让图片合适的大小来显示出来,达到最佳的布局显示图片。PixelMap图片是指图片解码后无压缩的位图,用于图片显示或图片处理。所以需要先要从网络上下载图片,在这里演示使用HTTP来下载图片。在这里主要是调用 http.createHttp().request函数来发出请求,并且设置返回的响应函数(error, data)。由于PixelMap图片是一种无压缩的图片,比较适合图片处理,比如从网络上加载图片之后,再进行处理再显示到的手机屏幕。点击一下获取网络图片的按钮,就会显示这个图片在下面。
2024-02-22 11:12:13 393
原创 鸿蒙OS应用开发之显示图片组件5
前面学习了网络图片的显示,现在来学习图片的缩放设置,因为图片的来源不确定性,导致图片与显示区域大小的不匹配,就需要采用缩放的方式来显示图片。对于图片的缩放,我们不需要管理它的插值过程,只需要设置特定的方式就可以。在这里定义了6种操作模式,这些模式需要根据用户的要求来选择合适的方式。每一种方式显示都不一样,这就需要根据实际需求来找到合适的显示方式了。可以看到第一种方式会宽度变小了。
2024-01-18 11:12:04 166
原创 鸿蒙OS应用开发之显示图片组件4
前面学习了比较复杂的图片显示,现在来学习一个简单的方式,就是采用网络图片显示。不过,这个需要APP向用户申请网络的权限。如果具备这个权限,只要连接上网,就可以动态地更新界面上显示的图片,这是比较方便的地方。幸好鸿蒙系统考虑到这个问题,提供了一个临时替换的方案,就是当图片没有下载完成之前可以采用占位的图片。意思就是在APP里可以提供一个默认的图片,当图片下载完成之前先用这个图片进行显示。有可能网络比较慢,这时候图片没有下载完成,就不能显示。这里我已经把网络地址改为错误的地址,就出现这个图标显示了。
2024-01-17 10:04:26 218
原创 鸿蒙OS应用开发之显示图片组件3
在这里调用then方法来处理用户选择的照片结果集,在这里把得到的结果集photoSelectResult.photoUris保存起来,并不能在这里直接处理它,因为这里的回调应该是界面线程的回调。一般情况下,需要采用临时变量来缓存结果集。在方法select里,需要输入一个参数PhotoSelectOptions对象,这个对象用来定义查找的参数,比如文件类型,文件数据限制。这样用户选择的照片路径,就会保存在全局变量里,只需要我们遍历全局变量,就可以把结果集里的路径遍历出来,再通过路径打开照片进行显示。
2024-01-16 11:15:22 546
原创 鸿蒙OS应用开发之显示图片组件2
一种是把图片直接放在代码内部,减少加载图片的调用,提高图片的显示速度。因为代码是直接加载到内存里,这时显示图片,就是从内存里显示。另一种是方便从网络里一次获取多个图片回来,或者一次性获取回来,减少调用网络的接口。在这里上传图片,就可以一键转换为base64图片文本,不过要注意这里不能是太大的图片。base64,[base64 data],其中[base64 data]为Base64字符串数据。要采用这种图片资源,需要把图片先转换为base64的字符串,这种转换可以自己编写工具来转换,也可以采用现成的工具。
2024-01-15 13:26:42 445
原创 鸿蒙OS应用开发之显示图片组件1
比如可以显示网络上的图片,不过需要经过授权审核的网络连接才能显示出来。此时,Image组件的src参数为网络图片的链接。在现在的应用开发里,为了显示漂亮的界面,基本上都是图形界面布局,大量地采用图片来展示,并且采用动画。使用资源格式可以跨包/跨模块引入图片,resources文件夹下的图片都可以通过$r资源接口读取到并转换到Resource格式。在这个接口输入的参数,可以是一个字符串,也可以一个资源,也可以是一个编辑图片资源。这个是常用来显示固定的图片,不需要从网络上加载,快速显示。
2024-01-15 12:41:20 173
原创 鸿蒙OS应用开发之仪表组件
在鸿蒙系统里定义了一个Gauge组件,在这里估且叫做仪表组件,它是实现一个环形展示数据的组件,其实也可以用来指示方向的一个组件。这个组件是一个360度可以设置的圆环,它可以设置每一段的颜色。在这里设置了四段颜色,每段占25%的长度。在这里看到value()属性也可以设置显示值,如果初始化值也有设置,那么它会以属性value设置为准。参数value是表示当前指示值,比如显示为75%,那么这里设置75.主要输入一个参数options,而这个参数主要三个设置。可以根据自己的数据显示需求,进行具体的设置。
2024-01-12 11:36:28 144
原创 鸿蒙OS应用开发之分隔线组件
前面学习了百分比组件,可以实现不同的百分比的图形显示。本文将来学习一个分隔组件,可以把一些列表或按钮组件进行分隔,达到分组的目的。比如一个列表里,有一部分项是操作查看的,一部分是操作编辑的,就可以使用分隔组件进行分离开。比如上图就是使用横的分隔条把菜单进行分离。提供分隔器组件,分隔不同内容块/内容元素。在这两个按钮之间就出现了一条分隔线。
2024-01-12 10:48:28 311
原创 鸿蒙OS应用开发之百分比显示组件
前面学习了动态加载的组件,在本文里将要学习百分比显示组件,这个组件可以把数据按百分比的情况进行图形显示出来。百分比图形显示还是很有用的,比如一个班里学生的成绩占比,还有软件项目开发进度的情况,还有软件下载进度等等。type是百分组件显示外形的方式,这里主要有两种显示,一种是圆形Circle,一个是线形Line。values是一个数组类型,描述每一段怎么显示,比如30%显示时,表示值就是30.里面的文本显示,还是采用别的代码来显示。这段代码就会显示30%占比,最大值为100,使用的圆形显示。
2024-01-11 12:24:02 802
原创 鸿蒙OS应用开发之加载动态组件
前面学习了动态填充的组件,现在来学习一个在嵌入在普通组件里的加载动态效果的组件。这个组件可以放在按钮等控件里面,实现动态加载的效果。接着在里面添加一个按行排列的组件Row,在这里再添加LoadingProgress组件。从上面看到第一个按钮里,包含加载动态组件,后面再显示文本loading。第三个按钮是一个圆形按钮,在里面也有加载动态组件,不过设置的颜色不一样。这是第一个按钮的代码,它采用胶囊外形,按下有效果。第二个按钮是没有这个组件,可以看到对比效果。设置加载进度条前景色。
2024-01-11 10:22:05 310
原创 鸿蒙OS应用开发之自动填充空白组件
当手机在竖屏或横屏时,屏幕空间大小会不一样,这时就需要考虑屏幕的组件布局,自动适应屏幕的变换。在本文里介绍一种采用自动填充空白组件来实现填充的功能。在这里输入一个参数min,就是当父窗口没有设置大小时,就需要靠这个来设置最小的空间占用。这样自动就填充在中间有颜色部分,如果没有采用空白组件,后面按钮,就会显示到文本后面。当调整到横屏显示时,就会自动填充满屏。所以Blank组件还是比较有用的,在自动对齐方面有很大作用。空白填充组件在容器主轴上的最小大小。像上面的例子,就是设置填充为红色。
2024-01-09 17:21:35 394
原创 鸿蒙OS应用开发之索引列表选择
前面学习了文本选择列表组件,这个组件可以根据需要把有限的几个字符串进行列表显示,并供用户进行挑选。比如我们来设计中国所有省份里的城市进行选择时,就会发现所有城市全部写到一个列表里,让用户使用起来就会比较麻烦。这时候就需要采用新的设计方法来实现用户的选择了,不能采用前面的文本列表方式来实现。比如先把省份列出来当作一个索引,当用户把省份选择之后,再把这个省份的城市列表出来。这样就可以快速到找到对应的城市。返回值:索引对应的字符串数组,此字符串数组在弹窗中竖排显示,字符串列表最多显示5个,超出部分可以滑动显示。
2024-01-08 11:00:38 1443
原创 鸿蒙OS应用开发之文本选择
前面学习了时间和日期选择组件,这样可以选择时间和日期了,但是那些非时间或日期的选择呢,又需要采用什么样的方式来解决呢?其实就是日期选择也有一些非连续的日期选择,对于这种日期不能采用前面学习过的选择组件,只能采用一种集合式的选择组件,这样更加方便用户来选择。本文将要学习文本选择组件,这个组件就是定义一个文本集合,然后就可以把这个集合的数据进行显示出来,并供用户进行选取。因此这个组件适合比较短小的集合元素,比如课程的选择,节气日期选择,一般种类的选择。在这个函数里输入的参数是第一项的高度,或者文本的高度。
2024-01-05 11:52:26 449
原创 鸿蒙OS应用开发之日期选择
前面学习了时间选择组件,实现了时间的选择,这样非常方便用户进行时间的输入,通过手动就可以输入时间,比直接文本输入要省不少时间,特别对于手机这样单手操作的设备,更加重要了。因此,日期的输入工作也不能落后,本文将要学习日期选择组件,这样就可以实现日期通过手上下移动的方式来对日历进行输入。还有中国人的节气,也是根据农历来看的,所以日历的设计上,就会有两种显示方式。此函数当用户选择一次日期之后,就会调用一次这里设置的回调函数,我们把代码写在回调函数里,就可以获得参数输入的日期,就是当前用户设置的日期value。
2024-01-05 10:22:19 655
原创 鸿蒙OS应用开发之时间选择
如果没有设置,就默认为当前系统时间。这两种方式都有用户使用,至于用户是使用那一种方式,我们并没有决定权,所以我们需要采用一种方式让用户进行选择。前面解决了时间显示的方式问题了,接着下来就是当用户选择时间之后,怎么样获取用户选择的时间呢?这样我们就学会怎么样使用时间选择组件,一个是12或24小时制的问题,一个是时间初始化的问题,最后一个是获取用户选择的时间并进行处理的问题。使用这个时间,就会在时间选择组件上显示为8点的时间。在这里获取时间之后,又设置到上面初始化的时间变量,这样才能同步下一次更新界面的时间。
2024-01-04 10:29:04 897
原创 鸿蒙OS应用开发之文本时钟
比如你正在开发一个阅读电子书的软件,由于是全屏进行显示,就看不到系统时间,这时就可以在界面上显示一个系统时间,这样让看书的人快速地知道当前的时间,也不用切换回到系统里查看时间,这是一个比较方便的功能。对横跨国际日界线的国家或地区,用-13(UTC+13)和-14(UTC+14)来保证整个国家或者区域处在相同的时间,当设置的值不在取值范围内时,将使用当前系统的时区偏移量。在这里显示了文本的时间,然后再添加两个按钮,一个按钮是用来启动计时,一个按钮是用来停止计时。日期间隔符固定为"/",时间间隔符为":"。
2024-01-03 12:45:13 971
原创 鸿蒙OS应用开发之文本计时器
比如每天定时起床的闹钟,比如定时的工作时间,又比如小孩子做作业的定时计算。由于这是一个文本显示的定时器,所以需要设置文本显示内容的格式,这是通过函数format()来设置,它采用自定义格式,需至少包含一个HH、mm、ss、SS中的关键字。如果是倒计时类型,表示开始倒计时的开始数字,它的单位为毫秒,比如30000表示为30秒计时。这里的this.format是定义在前面的变量,它的内容是'mm:ss.SS',表示分钟:秒.毫秒 的方式。有了上面的基本知识,就可能构造一个计时器的应用了。
2024-01-02 10:41:23 1032
原创 鸿蒙OS应用开发之菜单
前面学习了弹出式气泡提示,可以达到内容提示和交互,但是如果需要更多的选择,就不合适使用它来选择。这时应该采用菜单的方式,就可以达到更多的选择和设置,并且对于用户来说也是比较友好,因为它是采用一种清单列表的方式,而且有子菜单分类,分层显示。这是第一个菜单项,菜单显示名称由value来设置,所以这里显示为'菜单项1',接着定义菜单的事件响应函数action,这与前面气泡提示的响应是一样的。Menu()函数,作为菜单的固定容器,无参数。如果前面标准的菜单项不满足设计的要求,就需要采用自定义格式的菜单了。
2024-01-02 09:41:26 580
原创 鸿蒙OS应用开发之气泡提示
这种方式跟自定义的方式比较接近了,并且还有按钮选择,可以设置用户选择那一种按钮的响应,这是一种方便用户简单地设置的方式。最后的一种方式,也支持自定义的气泡提示,开发者可以使用构建器CustomPopupOptions创建自定义气泡,@Builder中可以放自定义的内容。在这里看到设置这个函数时,设置了两个参数,第一个参数this.handlePopup,用来控制弹窗是否显示,第二个参数{ message: '这是气泡提示的一种方式',},用来设置提示的文本。在后面的参数设置里,也是比较复杂的形式。
2023-12-29 10:43:09 1492
原创 鸿蒙OS应用开发之自定义弹窗
在上面参数里,定义我们自己定义的窗口页面CustomDialogExample,同时设置了自定义窗口的回调函数cancel和confirm,当在自定义窗口里点击对应的按钮时,就会调用外面父窗口的函数处理。要显示弹出窗口,我们需要来定义一个弹窗口的布局和显示内容,这些与普通的窗口是没有区别的,只是需要添加一个装饰器@CustomDialog。可见自定义弹窗主要有两个内容,一个是定义弹出窗口的内容和回调函数,另一个是构造一个控制对象。有了自定义窗口,还不行,需要一个事件来触发弹出这个弹式窗口。
2023-12-27 12:49:18 1203
原创 鸿蒙OS应用开发之文本显示
由于应用设计时,并不知道用户要查看的文本有多少长度,如果文本超出了文本框的显示范围,一般有两种设计,一种是采用滚动条的方式,可以让用户翻页查看;前面使用比较多显示文本输出,但是一直没有认真学习过,其实文本显示是最常用的组件,使用的地方也是非常多的,毕竟它是手机输出的基础,也是与人类交互的基础。这里使用的属性是textAlign(TextAlign.End),针对报表显示,就比较适合使用这个,因为它的设计原则是文本靠左,数字靠右对齐。参数content是可选参数,可以是字符串文本,也可以是资源文件。
2023-12-26 10:51:06 858
原创 鸿蒙OS应用开发之进度条
之所以要这样,是因为计算机是一个复杂的系统,其中软件更是复杂的系统,已经超过数千万行代码,经历数十年的积累而来。但是手机上还是4G网络或5G网络,目前来看只是相当于以前有线网络的速度,所以下载的速度还是很慢,这时候就需要有进度条来表示当前传送的进度,这是当前环境所需要的。通过上面的学习,我们明白了创建进度条的方法,以及类型,最后还学会了动态地更新进度条的方法。另外现在安装的APP应用也是越来越大,安装的时间也越来越长,需要进度条来表示安装过程,也是不可缺少的。后面只要我们更新此值,就可以改变进度条的值了。
2023-12-22 11:04:36 890
原创 鸿蒙OS应用开发之切换按钮
前面学习很多按钮,可以满足基本的使用,但是很多情况下,只有二选一的需求,这时采用切换按钮,就会让程序更加直观,并且切换按钮可以显示比较大一点,在手机上操作会更加方便。输入一个可选的参数options,它是定义为一个集合对象,第一个元素定义了切换按钮的类型,第二个参数定义了切换按钮处于哪一个状态。如果按钮是Switch样式,那么还可以改变上面按钮的颜色,它是使用函数switchPointColor来改变。来定义切换按钮,说明切换按钮是采用复选按钮的形式,接着下来就是定义响应函数。//CheckBox方式。
2023-12-21 10:20:52 1243
原创 鸿蒙OS应用开发之多选按钮
前面学习了复选按钮,可以给用户自行地选择各个选项,并且也可以不选,这是比较合理的。比如后面有10多项选项,一开始是默认全选,当用户只要其中一项时,就需要把所有已经选上的选项一项一项地去掉,这是很麻烦的,是考验人性的。在这里第一项是全选,或者全部不选,第二级是复选,用户可以一个一个地选择,也可以一个一个地不选。这样当用户点击这个按钮时,就会把这个组名里所有复选按钮全部选中,如果取消时,就会把所有选中按钮取消选中状态。要实现这种界面,需要使用前面学习的复选按钮,再加上一个多选按钮,才能实现。
2023-12-20 11:54:06 664
原创 鸿蒙OS应用开发之单选和复选按钮
前面学习了文本的输入,以及普通的按钮输入,但是现在的界面设计,已经非常标准化,还需要有单选按钮和复选按钮。因为不同的客户对于糖的接受程度会不一样,大多数人会喜欢5分糖,但是有人喜欢甜一些,就会10分糖,但又有一些人不喜欢糖,就会选择无糖。面对这种需求,我们就可以采用单选按钮来设计实现,让用户只选择一个,不可能既选无糖,又要10分糖的需求。在软件开发里,能让用户选择的选项,就不要让用户输入。同样,一个点餐APP里也有多个一起选的,比如一杯奶茶里可以选择加芋泥,还可以选择加波波珠,还可以添加红米。
2023-12-20 10:30:52 431
原创 鸿蒙OS应用开发之多行文本输入
但是也有一些例外,比如需要用户备注一段说明自己的简历,那么使用一行文本,要把情况写出来,就有点强人所难,毕竟不是所有人都能这么好的总结能力,因此要使用多行的文本组件,这样让所有用户适应。因为多行输入之后,偶尔要移动光标到某一个位置进行添加或修改,如果没有光标的定位功能,就会比较让人作急,要么全部删除再写,这是多么浪费时间。只要你仔细地查看一下,就会发现跟单行文本输入框的定义是一样的,所以前面学习的内容是完全适合这里的,按样子使用就可以了,特别事件响应函数都是一样的。,这个跟单行组件是一样的。
2023-12-19 10:28:23 923
原创 鸿蒙OS应用开发之正则表达式检查
前面学习了数字、邮件地址的输入,说明了输入检查的重要性,但是这两类的检查,都是满足日常的简单的应用,如果需要一些复杂的检查,就无能为力了。随着手机的普及,手机号码已经成为人们日常生活中必不可少的一部分,但在开发过程中,我们需要对手机号进行格式验证,以确保用户输入的数据符合我们的要求。所以很复杂的输入检查,都可以采用正则表达式对象RegExp来处理,更多的正则表达式的写法,需要自己努力去补课了。在这里只能进行简单的过滤检查,更复杂的表达式可能会出错,并不能处理,估计这个地方需要系统添加完善它。
2023-12-18 17:50:05 1320
原创 鸿蒙OS应用开发之数字、邮件地址输入
比如一个注册帐号,当你输入七八个页面后,在最后提交时,才提出来不合法,那么用户就需要一个一个返回去重新查看,这样来回折腾,非常让人生气的。另外还有一种,没有检测到,导致输入非法的字符,再到SQL语句处理也不严格,那么就会导致SQL语句执行出错,如果出错又没有处理,整个系统就会崩溃。这样才能正确地处理正确的数据,限制用户犯错,才是软件智能的体现。在鸿蒙应用里,也不会例外,所以文本输入组件,可以所有内容的文本,也可以限制只输入数字,还有限制输入符合邮件的相应字符,还有更加复杂的,就是添加正则表达式来处理。
2023-12-18 10:42:17 206
原创 鸿蒙OS应用开发之登录界面
在前面学习了输入文本组件和按钮组件,可以使用这两种组件来实现一些常用的功能,比如登录界面,这种界面是每个程序员经常会到遇到的,比如让用户输入用户名称和密码。在这里又由于需要获取界面输入的值,需要响应事件onChange,把用户输入的内容保存在this.username里,以便后面使用。在上面界面里,第一个文本框用来输入用户名称,第二个用来输入用户密码,当用户输入完成之后,就可以点击后面的按钮进行登录。这样在onClick事件里就可以使用用户名称和用户密码,这样就可以向远程服务器进行请求登录验证。
2023-12-14 18:48:16 315
原创 鸿蒙OS应用开发之文本输入组件
前面学习了按钮组件的输入方式,它只能响应触摸输入,或者点击输入,而不能实现文本的输入,虽然它是主流的操作方式,但是很多时候还是需要文本的输入。在输入组件里定义了输入事件onChange,这个事件就是用来获取输入内容的,其它事件可以不关心,但是这个事件必须要处理,否则获取不到用户输入内容。这是我们开发人员需要关心的问题,就是用户输入文本之后,我们怎么样从这个控件里获取到刚刚输入的内容,其实它是通过事件响应来获取内容的。用来提示用户输入的内容格式,这样对于用户来说更加友好,不会忘记输入内容的方式。
2023-12-14 10:16:07 225
python抓取天气并分析 实例源码
2017-08-28
书《深度学习》
2017-03-13
国产8051模拟器
2016-09-10
tinyxml2配套源码
2016-06-27
selenium的浏览器驱动
2016-06-14
开源鸿蒙4.0不能进入桌面的补丁
2024-03-17
开源鸿蒙 4.0 RK3566开发板配置
2024-03-17
svm_hog_data.rar
2020-03-02
实现numpy的C++库扩展
2019-11-24
python web py入门配套源代码
2018-02-23
webpy演示例子1
2018-02-21
胶囊模型的代码
2018-02-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人