mcpField
E
expo-ui-jetpack-compose

expo-ui-jetpack-compose

github.com/sickn33开发48.8k70 次安装今天更新
代码仓库

关于 expo-ui-jetpack-compose

此技能指导使用 `@expo/ui/jetpack-compose` 在 Expo 中构建 Android 原生 UI,目标版本为 SDK 55。内容包括选择组件和修饰符、使用 `Host`,以及将 Jetpack Compose 模式转为 Expo UI 代码。

主要功能

  1. 01在 Expo 中构建 Android 原生 UI
  2. 02选择 Compose 组件和修饰符
  3. 03在 `Host` 中嵌入 Compose 树
  4. 04应用 Jetpack Compose 模式
  5. 05面向 Expo SDK 55 API

适用场景

  1. 01构建 Compose 原生 Android 页面
  2. 02使用 `LazyColumn` 添加 Compose 列表
  3. 03在 Expo 应用中嵌入 Compose 视图
  4. 04将 Compose 模式转换为 Expo UI

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/sickn33/agentic-awesome-skills --skill expo-ui-jetpack-compose

安装后在 Claude Code 中输入/expo-ui-jetpack-compose确认已加载。

详细介绍

此技能中的说明仅适用于 SDK 55。对于其他 SDK 版本,请参阅对应版本的 Expo UI Jetpack Compose 文档,以获取最准确的信息。

适用场景

  • 你需要在 Expo 中使用 @expo/ui/jetpack-compose 构建 Android 原生 UI。
  • 任务涉及选择 Compose 视图或修饰符、将其嵌入 Host,或将 Jetpack Compose 模式转换为 Expo UI 代码。
  • 你正在针对 Expo SDK 55 的 Jetpack Compose 集成行为进行开发。

安装

npx expo install @expo/ui

安装后需要重新构建原生应用(npx expo run:android)。

说明

import { Host, Column, Button, Text } from "@expo/ui/jetpack-compose";
import { fillMaxWidth, paddingAll } from "@expo/ui/jetpack-compose/modifiers";

<Host matchContents>
  <Column verticalArrangement={{ spacedBy: 8 }} modifiers={[fillMaxWidth(), paddingAll(16)]}>
    <Text style={{ typography: "titleLarge" }}>Hello</Text>
    <Button onPress={() => alert("Pressed!")}>Press me</Button>
  </Column>
</Host>;

主要组件

  • LazyColumn — 平台特定设计要求使用 Compose 原生列表时使用;不要一概用它替代 React Native 列表。将其包裹在 <Host style={{ flex: 1 }}> 中。
  • Icon — 使用 Android XML 矢量可绘制资源搭配 <Icon source={require('./icon.xml')} size={24} />,这些资源可从 Material Symbols 获取。

限制

  • API 以 SDK 55 为目标;编辑前请核对该版本的实际 Expo 文档和已安装的软件包。Android/iOS 示例仅适用于各自平台,不能互换,也不能证明真实设备上的行为。现有框架和用户要求优先。
  • 原生重建会安装或执行依赖项并更改项目;请先确认预期的开发目标。icon.xml 和应用代码是应用资源,不是捆绑文件。
  • 不要将输出视为针对特定环境进行验证、测试或专家审查的替代品。
  • 如果缺少必需的输入、权限、安全边界或成功标准,请停止并请求澄清。

评论

支持 Markdown