问题标签 [composable]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
37 浏览

android - Jetpack Compose:在 DropDownMenu 中模仿 spinner.setSelection()

用例是您在下拉菜单中有 10 或 100 项,下拉选项有一些排序 - 如数字值或单词的字母列表 - 并且选择是连续进行的。

当用户重新打开菜单时,您希望它在与他们上次选择的区域相同的区域中打开,例如,您不会从“car”跳转到“apple”,而是从“car”跳转到“cat” ”。或者,如果他们只是选择查看订单号 358,他们可以快速查看订单号 359。

使用视图,您可以创建一个Spinner并将所有项目放在一个中ArrayAdapter,然后调用spinner.setSelection()以直接滚动到您想要的索引。

DropdownMenu没有像HorizontalPager's这样的东西scrollToPage()。那么可能存在哪些解决方案来实现这一目标呢?

到目前为止,我已经尝试添加verticalScroll()DropdownMenu' 修饰符并尝试使用 scrollState 进行算术运算。但它在运行时崩溃,并显示该组件具有无限高度的错误,如果您尝试嵌套可滚动组件(如带有 verticalScroll的LazyColumn内部),则会出现相同的错误。Column

0 投票
1 回答
46 浏览

android - 如何检查流是否为空?

我正在传递数据以将列表呈现为Flow<>. 如果它是空的,而不是列表,我需要显示题词“无数据”。如何设置条件来检查流是否为空?

0 投票
0 回答
31 浏览

android - PDFView 作为可组合

我想我快到了,但是...

我已经将 a 包裹com.github.barteksc.pdfviewer.PDFView在一个可组合的组件中,如下所示:

但是,我只是在调用视图时没有看到显示的 PDF,如下所示:

现在,我知道 PDF 存在,因为回调的Log.d输出update确实产生了原始 PDF 内容。但是,Page Count日志输出显示 0 页。

我错过了什么?为什么不显示 PDF?

更新

弄清楚了。您需要.load()像这样添加:

0 投票
1 回答
117 浏览

android - JetPack Compose 对可点击项目没有影响

我有一列中间有一张卡片。单击列时应该有一个动作,但单击卡片时应该没有任何反应。(如可取消的对话框)

当我使用 XML 执行此操作时,为列设置可单击(true)时解决了此问题,但是在 Jetpack Compose 中,当我单击卡时,出现无法删除的效果

我将此代码设置为 Card 修饰符:

如何从可点击项目中删除默认效果(按下效果无波纹)?

0 投票
0 回答
20 浏览

android - 可组合成位图而不显示它

使用 classicView时,很容易从视图中获取位图而不显示它。我通过 a 创建视图类LayoutInflater,然后,由于它没有附加到视图,我先测量它。我有以下扩展函数来测量它并在位图上绘制视图:

使用Composables 时,我无法成功从视图中导出位图。

我想象过这样的事情:

我所做的是MyComposableView使用应用程序上下文实例化 a,然后我尝试使用扩展函数获取位图toBitmap。结果是以下异常:

我无法理解的是为什么会为AbstractComposeView通过充气机获得的视图抛出异常但不抛出异常。

0 投票
1 回答
20 浏览

android - 如何在可组合屏幕下正确放置按钮?

我怎样才能在下面放置一个按钮AnimatedScreen?目前,该按钮是隐藏的,不可见。column 中的元素不应该按顺序排列,还是与 in 中的参数fillMaxSize有关AnimatedScreen

这是我的 AnimatedScreen 的代码:

0 投票
0 回答
29 浏览

javascript - Vue 3 中 props、emits、useStore 的代码重用

想象一下,我有一个应用程序,它有 10 个在某些方面相似但包含不同内容和一些功能差异的组件。但是它们都接收相同的 3 个道具作为基础(换句话说,它们可能定义更多但都定义了至少三个特定道具)它们也都有 1 个共同发射。它们还调用const store = useStore()并具有从 vuex 存储中提取值的相同计算属性。

有没有办法我可以创建一个可组合或其他策略来让这些组件组合或继承这些当前在 src 中重复的常见代码行。

例子:

另一个例子:

注意这两者之间有很多重复,但也有关键的区别。

0 投票
1 回答
27 浏览

vue.js - Vue复合使函数反应?

是否可以创建一个复合函数,以便消费者可以提供对函数的引用?在 mixins 中,只要消费者方法存在,您就可以调用它。这是我认为这会起作用的方式,但事实并非如此。方法 1 不是反应式的。我意识到这可能是一种反模式。有时您运行 async/ajax 调用,一旦完成,最好只运行回调方法 1 而不是更改虚拟值并在使用者中对其运行监视。想法?

-- 消费组件

可组合函数——

0 投票
1 回答
78 浏览

android - 错误信息; 无法访问类“androidx.compose.ui.Alignment.Horizo​​ntal”。检查您的模块类路径是否存在缺失或冲突的依赖项

我正在使用 Jetpack compose 制作一个 QR 码扫描仪应用程序。但是当我尝试使用 Column,可组合函数然后编译器给我这个错误: 无法访问类'androidx.compose.ui.Alignment.Horizo​​ntal'。检查您的模块类路径是否存在缺失或冲突的依赖项

这是我的应用程序 build.gradle 模块:

更新:这是产生错误的代码: 在此处输入图像描述

我不知道这个错误消息在说什么以及如何解决这个问题?

0 投票
1 回答
23 浏览

kotlin - 如何在可组合按钮 onClick 中访问 LocalComponent.current?

我有一个按钮,我想LocalComponents.current在它的 onClick中访问

但IDE抱怨

@Composable 调用只能在 @Composable 函数的上下文中发生