问题标签 [litho]

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 投票
1 回答
209 浏览

android - Litho 的 @FromPrepare 注释有什么作用?

我一直在阅读 Litho 的文档,发现了这个代码示例

@FromPrepare 注释有什么作用?

0 投票
1 回答
676 浏览

android - 如何使用 Litho 框架执行分页?

我正在实现一个 Retrofit APi,用于从服务器获取数据并RecyclerView使用 Litho 框架显示这一点,它做得很好。众所周知,当我们在 recyclerview 中显示无限数据时,我们必须实现分页模式。我知道这一点,但我很困惑如何在 Litho 框架中实现它。光刻提供onScrollListener()方法:

我不知道:如何EndlessRecyclerViewScrollListener在 Litho 中使用自定义的无限滚动?

0 投票
0 回答
208 浏览

java - 与 FBLitho 集成的 Google 地图视图

我正在尝试将 Google Maps View 与 Litho 集成,并且为此创建了 MountSpec。我有两个问题。

首先,我需要在 OnPrepare 方法中运行一些后台线程代码,但结果无法将后台任务的结果分配给 Output 对象。有什么更好的方法来处理这个问题?

其次,当视图呈现时,它会抛出一个错误(下面的 Stacktrace)。

java.lang.ClassCastException:com.google.android.gms.location.places.internal.zzas 无法在 com.facebook.litho.widget.Recycler.onPrepare 中转换为 android.support.v4.widget.SwipeRefreshLayout$OnRefreshListener(Recycler .java:98) 在 com.facebook.litho.ComponentLifecycle.createLayout(ComponentLifecycle.java:251) 在 com.facebook.litho.LayoutState.createTree(LayoutState.java:1237) 在 com.facebook.litho.LayoutState.createAndMeasureTreeForComponent(布局状态.java:1406) 在 com.facebook.litho.LayoutState.calculate(LayoutState.java:928) 在 com.facebook.litho.ComponentTree.calculateLayoutState(ComponentTree.java:1235) 在 com.facebook.litho.ComponentTree.measure(ComponentTree.java :545) 在 com.facebook.litho.LithoView.onMeasure(LithoView.java:218) 在 android.view.View.measure(View.java:17562) 在 android.support.v4.view.ViewPager。onMeasure(ViewPager.java:1658) at android.view.View.measure(View.java:17562) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5608) at android.support.design.widget.CoordinatorLayout.onMeasureChild (CoordinatorLayout.java:714) 在 android.support.design.widget.HeaderScrollingViewBehavior.onMeasureChild(HeaderScrollingViewBehavior.java:90) 在 android.support.design.widget.AppBarLayout$ScrollingViewBehavior.onMeasureChild(AppBarLayout.java:第1391章) ) 在 android.widget.FrameLayout.onMeasure(FrameLayout.java:436)测量(View.java:17562)在 android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5608)在 android.widget.FrameLayout.onMeasure(FrameLayout.java:436)测量(View.java:17562)在 android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5608)在 android.widget.FrameLayout.onMeasure(FrameLayout.java:436)

这是引发错误的 MountSpec:

0 投票
4 回答
15112 浏览

android - 用Android构建动态表单的解决方案

我实际上正在开发一个 Android 应用程序,我应该在其上显示基于 JSON 文档中包含的元数据的动态表单。基本上它的工作方式(没有细节)是一个 JSON 文档代表一个表单的结构:

当应用程序收到其中一个 JSON 文档时,我实际上正在做的是它遍历每个字段并将其解析为适当的视图(EditText、Checkbox、自定义视图等),向视图添加一个标签(将能够轻松检索它)并将视图添加到LinearLayout. 这是它实际工作方式的伪代码:

这样做的问题是,对于大型表单(如 >20 个字段),它需要增加大量视图,并且 UI 线程会遭受很多损失。要考虑的另一点是单个屏幕可能有多种形式(一个接一个垂直排序)。

为了避免 UI 线程过载,我想到了 2 个可能的解决方案:

  1. 使用 RecyclerView
  2. 使用Facebook 的 Litho

但是在考虑这两种解决方案时,我想到了多个问题:

  1. 使用 Litho 是一个很好的用例吗?还是使用 RecyclerView 就足够了?
  2. 我的观点状态如何?如果我使用回收模式,我是否能够保持每个字段的状态(甚至是那些不在屏幕上的字段),从而能够在不丢失数据的情况下保存表单?
  3. 如果我使用回收模式显示一个表单,我将如何处理多个表单?我们可以嵌套 RecyclerView 吗?表单需要像在垂直 RV 内一样依次显示,但如果表单本身是 RV,我应该如何处理?

这更像是一个“良好实践”的问题,并给出了实现我的目标的正确方法或正确方法之一,而不是需要代码示例的特定答案等。

在此先感谢您的时间。

0 投票
1 回答
87 浏览

android - Litho 启动时崩溃

我正在开发需要一些复杂的 RecyclerView UI 的 android 应用程序,这就是为什么我在 Facebook 的 Litho 上尝试但即使是示例崩溃似乎在我的旧手机 HTC Desire x 运行 android 4.1 但在运行 6.0 的新手机上它的工作确实 litho 没有t 支持 4.1 jellybeans 之前的 android 吗? 调试日志要点

0 投票
1 回答
442 浏览

android - 使用带有“wrap_content”视图的 MountSpec 组件 - 如何实现 onMeasure()

我正在构建一些 Mount Spec 组件来呈现特定的视图。我所有的视图都应该有 height = "wrap_content"。

当我第一次开始研究它时,我还没有实现 onMerasure() 方法(使用 @OnMeasure 注释),所以组件不会显示任何东西!实现 onMeasure() 后,组件开始工作,但由于可用资源无法计算组件高度(应在 onMeasure 内完成)。

如何使 Litho Mount Spec 与没有固定高度的视图一起使用?

0 投票
1 回答
358 浏览

android - 如何使用 Litho.Edittext 处理按下的输入

在我当前的 android 项目中,我必须使用 Litho 框架。我现在面临的问题是如何使用 Litho EditText 小部件处理输入键。(按下软键盘上的输入键时调用请求)我在 LithoView 上尝试了 setOnKeyListener,它包含 EditText 但没有任何效果。因此,如果有人将 Litho 与 EditText 一起使用并且可以提供帮助,我会很高兴。

0 投票
1 回答
164 浏览

android - 如何在 facebook litho 上添加键盘支持

我正在尝试使用 facebook litho 构建用于电视的 android 应用程序。

我们需要支持键盘事件(上/下/左/右)来控制导航。

我可以在activity中通过onKeyDown拦截键盘事件,但是我不知道如何从activity中更新组件的状态。

0 投票
0 回答
194 浏览

android - 单击 Litho 中的父组件后更改文本值

考虑我正在创建一个包含两个文本子项的列,并在列视图上设置一个单击处理程序。单击列后,我想更改第一个文本的值。我怎样才能做到这一点?

0 投票
1 回答
458 浏览

android - FB Litho:如何为文本设置自定义字体

我的问题是如何Text在 Facebook 的 UI 框架Litho中为组件设置自定义字体?

以下是我的Text组件: