
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
为满足App不同场景下的内容形式,流量变现服务为您提供了Banner广告、原生广告、激励广告、插屏广告、开屏广告、贴片广告六种广告形式。
与@State有相同的语义,但初始化方式不同。@Prop装饰的变量必须使用其父组件提供的@State变量进行初始化,允许组件内部修改@Prop变量,但更改不会通知给父组件,即@Prop属于单向数据绑定。装饰的变量可以和父组件的@State变量建立双向数据绑定,需要注意的是:@Link变量不能在组件内部进行初始化。装饰的变量是组件内部的状态数据,当这些状态数据被修改时,将会调用所在组件的build方
ArkTS通过struct声明组件名,并通过@Component和@Entry装饰器,来构成一个自定义组件。ArkTS提供了@Builder装饰器,来修饰一个函数,快速生成布局内容,从而可以避免重复的UI描述内容。使用@Entry和@Component装饰的自定义组件作为页面的入口,会在页面加载时首先进行渲染。使用时只需要使用this关键字访问@Builder装饰的函数名,即可快速创建布局。对于如
Text是文本组件,用于显示文字Span只能作为Text组件的子组件显示文本内容,可以在一个Text内添加多个Span来显示一段信息TextInput 是单行输入框组件,通常用于响应用户的输入操作TextArea 是 多行输入框Button是按钮组件,通常用于响应用户的点击操作Image是显示图片组件
除了标准库提供的委托,还可以自定义委托类,实现更灵活的逻辑(如协程安全的延迟初始化、数据库存储委托等)。类委托:将接口中包含 suspend 函数的实现委托给其他类,简化代码复用(如代理网络请求、异步任务)。lazy委托:延迟初始化协程中需要的资源(注意线程安全,复杂场景需自定义协程安全委托)。observable委托:监听属性变化时,通过启动协程处理异步逻辑(如网络请求、数据库更新)。自定义委托
组件作用返回值适用场景suspend标记可暂停的函数无(函数自身有返回值)定义耗时操作launch启动无返回值的协程Job后台任务(无结果)async启动有返回值的协程需结果的异步任务指定协程运行的线程池控制任务执行的线程环境。
五、内联扩展函数之also适用于let函数的任何场景,also函数和let很像,只是唯一的不同点就是let函数最后的返回值是最后一行的返回值而also函数的返回值是返回当前的这个对象。一般可用于多个扩展函数链式调用。

如何将数据传递到布局文件中呢?首先,在布局文件中定义布局变量,指定对象的名字和类型,当然数据的操作在标签里。LiveData是Jetpack提供的一种响应式编程组件,它可以包含任何类型的数据,并在数据发生变化的时候通知给观察者,适合与ViewModel结合在一起使用,就可以让ViewModel将数据的变化主动通知给Activity。DataBinding为了方便使用,对布局变量提供了Setter类

运行服务端:将你的应用安装到手机或模拟器上。启动,点击 "绑定服务" 按钮。观察 Logcat:你会看到打印出 "Service bound by client." 的日志。调用方法:点击 "调用服务方法" 按钮。客户端会通过 Binder 调用服务端的add方法,并显示结果 "10 + 20 = 30"。服务端的 Logcat 也会打印出收到的参数。解绑服务:点击 "解绑服务" 按钮,连接断开。
若要传递自定义对象(如User),需:创建User类并实现Parcelable// 实现Parcelable的序列化和反序列化方法@Override@Override@Overridereturn 0;@Override为User创建对应的 AIDL 文件(同名,用于声明可跨进程传输):// 声明自定义Parcelable对象同步项目:点击菜单栏,让 Android Studio 自动生成 AID







