当前位置: 首页 > news >正文

定制软件开发多少钱seo技术蜘蛛屯

定制软件开发多少钱,seo技术蜘蛛屯,网盘做网站,做调像什么网站找活使用Jetpack Glance创建Android Widget Jetpack Glance发布,让我们使用Google提供的Jetpack Glance创建一个联系人列表小部件。 https://developer.android.com/jetpack/compose/glance 什么是Glance? Jetpack Glance是一个使用Kotlin API创建小型、轻…

使用Jetpack Glance创建Android Widget

Jetpack Glance发布,让我们使用Google提供的Jetpack Glance创建一个联系人列表小部件。

https://developer.android.com/jetpack/compose/glance

什么是Glance?

Jetpack Glance是一个使用Kotlin API创建小型、轻量级和高效的应用程序小部件的框架。它设计用于显示用户需要一目了然的信息。

我们将构建什么?

正如我在开头提到的,我们将构建一个联系人列表小部件。以下是它的样子。

设置
根据您需要的功能,在应用程序模块中添加依赖项。

dependencies {// For AppWidgets supportimplementation("androidx.glance:glance-appwidget:1.0.0-beta01")// For interop APIs with Material 2implementation("androidx.glance:glance-material:1.0.0-beta01")// For interop APIs with Material 3implementation("androidx.glance:glance-material3:1.0.0-beta01")
}

创建ContactListWidget

创建一个名为ContactListWidget的新kt文件。我们首先要做的是继承GlanceAppWidget。然后,覆盖provideGlance函数。在这里,我们将构建小部件的UI。

打开provideContent块,这个方法非常类似于setContent,它允许我们使用Jetpack Compose的composables

override suspend fun provideGlance(context: Context, id: GlanceId) {provideContent {// ...}
}

在创建小部件之前,让我们为它创建一个主题。

主题

首先,我们要创建一个colorScheme。在我的例子中,我只是从应用程序主题中删除了private属性,然后在这里调用了它们。

private val colorScheme = ColorProviders(light = LightColorScheme,dark = DarkColorScheme
)

之后,我们可以调用GlanceTheme并将新的colorScheme传递给它。

override suspend fun provideGlance(context: Context, id: GlanceId) {provideContent {GlanceTheme(colors = colorScheme) {ContactListWidget.Widget()}}
}

现在让我们在这个类中创建一个名为Widget的单独函数,并用@Composable注解它。

记得导入Glance组件,而不是material组件。另外一件事是,Glance组件使用GlanceModifiers

@Composable
private fun Widget() {Box(modifier = GlanceModifier.background(GlanceTheme.colors.background).padding(15.dp).cornerRadius(20.dp) // Only works for Android versions >= 13) {LazyColumn {items(10) {Row(modifier = GlanceModifier.padding(vertical = 10.dp,horizontal = 5.dp).clickable {// Call the person},verticalAlignment = Alignment.CenterVertically) {Image(provider = ImageProvider(R.drawable.person),contentDescription = null)Spacer(modifier = GlanceModifier.width(10.dp))Text(text = "John Doe")}}}}
}

我们还需要创建一个GlanceAppWidgetReceiver。这将创建我们将在屏幕上看到的小部件视图。

class ContactListWidgetReceiver : GlanceAppWidgetReceiver() {override val glanceAppWidget: GlanceAppWidgetget() = ContactListWidget
}

现在我们需要创建一个XML文件,用于设置小部件的一些属性。Right-click on res > New Resource File

xml文件内容如下:

<?xml version="1.0" encoding="utf-8"?>
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"android:description="@string/app_name"android:minWidth="80dp"android:minHeight="80dp"android:resizeMode="horizontal|vertical"android:widgetCategory="home_screen" />

最后,添加receiver到AndroidManifest.xml

<manifest><application><receiverandroid:name=".ContactListWidgetReceiver"android:exported="true"><intent-filter><action android:name="android.appwidget.action.APPWIDGET_UPDATE" /></intent-filter><meta-dataandroid:name="android.appwidget.provider"android:resource="@xml/contact_list_widget_info" /></receiver></application>
</manifest>

GitHub

https://github.com/daniatitienei/GlanceWidgetCourse.git

http://www.khdw.cn/news/30785.html

相关文章:

  • 普陀区建设工程质检网站培训计划方案模板
  • 东莞企业网站公司广告联盟有哪些平台
  • h5做商城网站推广公众号
  • 创意产品设计图如何做网站优化
  • 网络营销概念及理解seo推广代理
  • 做斗图的网站网络营销的目标
  • 环境设计专业资料网站seo快速推广窍门大公开
  • 自己能网站建设合肥360seo排名
  • 如何把网站做跳转浏览器链接地址2022年列入传销组织最新骗法
  • 官方网站的域名文章代写
  • jsp做网站开发上海哪家seo公司好
  • 那家网站做照片书好全国疫情高峰感染进度
  • 网上怎么找房屋设计师seo排名优化培训价格
  • wordpress 可能原因:您的主机禁用了mail()函数.兰州网络推广优化服务
  • 养老网站备案必须做前置审批吗磁力猫引擎入口
  • 网站ip访问做图表seo搜索引擎优化排名哪家更专业
  • 网站规划的公司网站权重
  • 厦门市app开发网站建设公司免费seo排名优化
  • 成都住建局官网首页郑州seo软件
  • 京东网上购物商城官方网站厦门关键词优化网站
  • 做直销上哪个网站好广州疫情升级
  • 上海服装集团网站建设新闻头条今日要闻国内
  • 网站被恶意仿站长春seo招聘
  • 专业定制网咖装修效果图网站seo外包
  • 网站建设中页面设计网络营销策划名词解释
  • 阳江网站推广优化公司关键词生成器
  • qq空间网页版在线登录入口aso优化推广公司
  • 做网站的需要花多少钱谷歌chrome手机版
  • 购物网站建设机构百度投放广告收费标准
  • 网页网站制作维护产品策划推广方案