用户协议
用户协议轻账本的所有权和运作权归轻账本创作经营者所有。在本服务条款中简称 “轻账本”及有时称为“我们”。使用轻账本产品及服务将视为您同意以下使用条款。
1、仅供个人使用轻账本仅供用户个人用于非商业用途。如果要销售轻账本或者与轻账本有关或派生的任何资料、服务或软件,则必须得到我们的允许。如果用户对轻账本有任何意见,或有如何改进的建议,可向我们提出。请注意,如果这样做,还会授予轻账本和第三方在轻账本(或第三方软件)中无偿使用和加入用户的建议或意见的权利。
2、知识产权用户承认轻账本创作经营者拥有对轻账本的所有权利,包括但不限于所有知识产权。“知识产权”指在专利法、版权法、商业机密法、商标法、反不正当竞争法等法中规定的所有权利以及其中的所有应用、更新、扩展和恢复,无论在现在还是以后在全球范围内实施和生效。用户同意不会修改、改编、翻译轻账本、创作轻账本的派生作品、通过反编译、反向工程、反汇编或其它方式从轻账本得到源代码。用户同意不会删除、掩盖或更改我们或任何第三方的版权声明、商标或其它所有权声明。
3、用户隐私制度尊重用户个人隐私是我们的一项基本政策。所以,我们一般不会公开、编辑或透露用户的注 ...
隐私协议
隐私协议本应用尊重并保护所有使用服务用户的个人隐私权。为了给您提供更准确、更有个性化的服务,本应用会按照本隐私权政策的规定使用和披露您的个人信息。但本应用将以高度的勤勉、审慎义务对待这些信息。除本隐私权政策另有规定外,在未征得您事先许可的情况下,本应用不会将这些信息对外披露或向第三方提供。本应用会不时更新本隐私权政策。 您在同意本应用服务使用协议之时,即视为您已经同意本隐私权政策全部内容。本隐私权政策属于本应用服务使用协议不可分割的一部分。
1、适用范围(A) 在您注册本应用帐号时,您根据本应用要求提供的个人注册信息。
(B) 在您使用本应用网络服务,或访问本应用平台网页时,本应用自动接收并记录的您的浏览器和计算机上的信息,包括但不限于您的IP地址、浏览器的类型、使用的语言、访问日期和时间、软硬件特征信息及您需求的网页记录等数据;
(C) 本应用通过合法途径从商业伙伴处取得的用户个人数据。
您了解并同意,以下信息不适用本隐私权政策:
(A) 您在使用本应用平台提供的搜索服务时输入的关键字信息;
(B) 本应用收集到的您在本应用发布的有关信息数据,包括但不限于参与活动、成交信息及评价详情 ...
Flutter小部件OutlinedButton
OutlinedButton 构造方法及属性12345678910111213const OutlinedButton({ super.key, required super.onPressed, super.onLongPress, super.onHover, super.onFocusChange, super.style, super.focusNode, super.autofocus = false, super.clipBehavior = Clip.none, super.statesController, required super.child,});
123456789101112factory OutlinedButton.icon({ Key? key, required VoidCallback? onPressed, VoidCallback? onLongPress, ButtonStyle? style, FocusNode? focusNode, bool? autofocus, C ...
Flutter小部件FilledButton
FilledButton 构造方法及属性12345678910111213const FilledButton({ super.key, required super.onPressed, super.onLongPress, super.onHover, super.onFocusChange, super.style, super.focusNode, super.autofocus = false, super.clipBehavior = Clip.none, super.statesController, required super.child,}) : _variant = _FilledButtonVariant.filled;
1234567891011121314factory FilledButton.icon({ Key? key, required VoidCallback? onPressed, VoidCallback? onLongPress, ValueChanged<bool&g ...
Flutter小部件ElevatedButton
ElevatedButton 构造方法及属性12345678910111213141516/// Create an ElevatedButtonconst ElevatedButton({ super.key, required super.onPressed, super.onLongPress, super.onHover, super.onFocusChange, super.style, super.focusNode, super.autofocus = false, super.clipBehavior = Clip.none, super.statesController, required super.child,});
123456789101112131415161718192021/// Create an elevated button from a pair of widgets that serve as the button's/// 图标和标签排成一行,并由12个逻辑像素填充/// 开始是16, ...
Flutter小部件Text
Text 构造方法及属性12345678910111213141516171819202122/// Creates a text widget. const Text( String this.data, { super.key, this.style, this.strutStyle, this.textAlign, this.textDirection, this.locale, this.softWrap, this.overflow, this.textScaleFactor, this.maxLines, this.semanticsLabel, this.textWidthBasis, this.textHeightBehavior, this.selectionColor, }) : assert( data != null, 'A non-null String must be provided to a Text ...
Dart泛型
1234567891011121314151617181920212223// 泛型常用于需要类型安全的情况。// 适当的指定泛型可以更好地帮助代码生成。// 使用泛型可以减少代码重复。var names = <String>[];names.addAll(['11', '22']);// names.add(2); The argument type 'int' can't be assigned to the parameter type 'String'// 减少代码重复abstract class ObjectCache { Object getByKey(String key); void setByKey(String key, Object value);}abstract class StringCache { String getByKey(String, key); void setByKey(String key, Strin ...
Dart类
Dart 是支持基于 mixin 继承机制的面向对象语言,所有对象都是一个类的实例,而除了 Null 以外的所有的类都继承自 Object 类。基于 mixin 的继承 意味着尽管每个类 (top class Object? 除外) 都有一个超类,一个类的代码可以在其他多个类继承中重复使用。扩展方法 是一种在不更改类或创建子类的情况下向类添加功能的方式。
类的成员
对象的成员由函数和数据 (即 方法 和 实例变量)组成。方法的调用要通过对象来完成,这种方式可以访问对象的函数和数据。
使用 (.)来访问对象的实例变量
1234var p = Point(2, 2);assert(p.y == 2);double distance = p.distanceTo(Point(4, 4));
使用 ?. 代替 . 可以避免因为左边表达式为 null 而导致的问题
1var a = p?.y;
对象的类型12345// 可以使用 Object 对象的 runtimeType 属性在运行时获取一个对象的类型。var a = const ImmutablePoint(0, 0);// pr ...
异步编程
Dart 代码库中有大量返回 Future 或 Stream 对象的函数,这些函数都是 异步的,它们会在耗时操作(比如I/O)执行完毕前直接返回而不会等待耗时操作执行完毕。
async 和 await 关键字用于实现异步编程,并且让代码看起来就像是同步一样。
处理Future123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990// 可以通过两种方式,获得 Future 执行完成的结果。// 1. 使用 async 和 await// 2. 使用 Future API// 使用 async 和 await 的代码是异步的, 下列代码使用 await 等待异步函数的执行结果。void main() { print("Hello World0"); check ...
Dart函数
main 函数1234// 每个应用程序都必须有一个顶层 main 函数 // flutter 的入口函数void main() => runApp(MyApp());
函数餐宿
可选参数
1234567891011// 可选命名函数,可以不传这些参数// 如果一个参数是可选的,但是不能为 null,你需要为它提供一个 默认值。userSettings();// null// nullvoid userSettings({String? page, String? str}) { print(page); print(str);}
必传参数
1234567891011// 必传参数 可以用 required 修饰。 // 使用 required 有利于静态代码分析器进行检查userSettings(page: 1, str: "2");// 1// 2void userSettings({required int page, required String str}) { ...