当前位置: 首页 > 知识库问答 >
问题:

使用Android Jetpack Compose构建偏好设置屏幕

江阳羽
2023-03-14

我必须构建一个新的Android应用程序。由于Jetpack Compose现在很稳定,我想使用它构建整个UI。此外,我还需要一个首选项/设置屏幕,用户可以在其中指定他的首选项。根据文档,仍然建议通过Fragments执行此操作。https://developer.android.com/guide/topics/ui/settings

我还发现了一个外部库,它会以compose的方式提供这个功能。https://github.com/alorma/Compose-Settings

以前有人这样做过吗?这样做的“最干净”的方法是什么?

谢谢你

共有1个答案

马浩淼
2023-03-14

我在compose中实现了一个应用程序,我使用Jetpack compose中提供的工具创建了设置屏幕,没有片段。

我这样做的方式是为每个设置选项创建一个可组合的,其中包含一个标题、可选字幕和一个复选框,该复选框指示该选项是否启用。

这些选项然后被添加到一个列(或者一个网格,如果你有一个平板电脑,很容易在compose中支持两者);您只需将复选框上的单击与您的视图模型挂钩,以更改设置,然后刷新UI。

如果您有其他类型的设置条目,您也可以为它们定义自己的组件。在我的例子中,我有其他设置选项来打开一个对话框,用户可以在其中html" target="_blank">配置一些参数,我还有另一个用于这种设置行的可组合函数。

这是个人意见,但我更喜欢远离第三方库,除非a)它们提供重要价值,并且b)它们来自提供某种维护和错误修复保证的来源。我不知道你提到的那个库,但如果你包括第三方库,你需要知道你正在放弃对应用程序部分的控制权,所以你需要平衡成本/收益比。

 类似资料:
  • 通用设置 打开软件时 打开 Sketch 时,你需要创建一个新的文件,或者选择现有文件。 撤销 Sketch 会将多个相似的操作视为一组,比如你连续多次按下方向键以移动图层,但是只需一次撤销,即可恢复原来的位置。 字体渲染 当你为 Mac 或网页设计时,你会想打开子像素抗锯齿效果,但是为 iOS 设计时,你会想关掉它。 矢量导入 这个选项让你在导入 PDF 或者 EPS 的时候告诉 Sketch,

  • Navicat Data Modeler 提供一些选项让你自定义用户界面和性能。 若要打开偏好设置窗口,从菜单栏选择“Navicat Data Modeler”->“偏好设置”。

  • Navicat 为所有工具提供完整的自定义用户界面选项。 若要打开偏好设置窗口,请从菜单栏选择“Navicat XXX”->“偏好设置”。

  • 偏好设置 面板中提供了编辑器的个性化设置,要打开 偏好设置 面板,请从主菜单的 Cocos Creator 3D -> 偏好设置 菜单进入。 设置可以分成下列几部分: 通用设置 通用设置主要是针对编辑器相关的一些基础数据进行配置。 编辑器语言:可以选择中文或英文,修改语言设置后要重新启动 Cocos Creator 才能生效。 选择本机 IP 地址:用户可以在本机有多个 IP 地址的情况下,手动选

  • 当我们把Git的环境配好,在Android Studio的偏好设置中只需要使用默认的配置就可以了。一般不需要特殊配置,但也不排除你有特殊的需求,那下面我们就介绍下Git的偏好设置。 设置步骤: 偏好设置: Version Control —> Git Path to Git executable: Git执行路径,这里使用的是默认路径,如果你自定义了Git路径,这里要记得攺一下, 不然会报错的.

  • 问题内容: 这是我正在使用的,可以成功设置用户代理,而无法下载首选项。 Windows 7,Chrome 26,Selenium-dotnet-2.31.2,chromedriver_win_26.0.1383.0 取自chromedriver.log: 检查临时首选项文件,位于,否,并已设置。 问题答案: Selenium dotNet驱动程序不支持开箱即用。问题在于必须在节点下进行定义。本类不