问题标签 [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.
android - Litho 的 @FromPrepare 注释有什么作用?
我一直在阅读 Litho 的文档,发现了这个代码示例
@FromPrepare 注释有什么作用?
android - 如何使用 Litho 框架执行分页?
我正在实现一个 Retrofit APi,用于从服务器获取数据并RecyclerView
使用 Litho 框架显示这一点,它做得很好。众所周知,当我们在 recyclerview 中显示无限数据时,我们必须实现分页模式。我知道这一点,但我很困惑如何在 Litho 框架中实现它。光刻提供onScrollListener()
方法:
我不知道:如何EndlessRecyclerViewScrollListener
在 Litho 中使用自定义的无限滚动?
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:
android - 用Android构建动态表单的解决方案
我实际上正在开发一个 Android 应用程序,我应该在其上显示基于 JSON 文档中包含的元数据的动态表单。基本上它的工作方式(没有细节)是一个 JSON 文档代表一个表单的结构:
当应用程序收到其中一个 JSON 文档时,我实际上正在做的是它遍历每个字段并将其解析为适当的视图(EditText、Checkbox、自定义视图等),向视图添加一个标签(将能够轻松检索它)并将视图添加到LinearLayout
. 这是它实际工作方式的伪代码:
这样做的问题是,对于大型表单(如 >20 个字段),它需要增加大量视图,并且 UI 线程会遭受很多损失。要考虑的另一点是单个屏幕可能有多种形式(一个接一个垂直排序)。
为了避免 UI 线程过载,我想到了 2 个可能的解决方案:
- 使用 RecyclerView。
- 使用Facebook 的 Litho。
但是在考虑这两种解决方案时,我想到了多个问题:
- 使用 Litho 是一个很好的用例吗?还是使用 RecyclerView 就足够了?
- 我的观点状态如何?如果我使用回收模式,我是否能够保持每个字段的状态(甚至是那些不在屏幕上的字段),从而能够在不丢失数据的情况下保存表单?
- 如果我使用回收模式显示一个表单,我将如何处理多个表单?我们可以嵌套 RecyclerView 吗?表单需要像在垂直 RV 内一样依次显示,但如果表单本身是 RV,我应该如何处理?
这更像是一个“良好实践”的问题,并给出了实现我的目标的正确方法或正确方法之一,而不是需要代码示例的特定答案等。
在此先感谢您的时间。
android - Litho 启动时崩溃
我正在开发需要一些复杂的 RecyclerView UI 的 android 应用程序,这就是为什么我在 Facebook 的 Litho 上尝试但即使是示例崩溃似乎在我的旧手机 HTC Desire x 运行 android 4.1 但在运行 6.0 的新手机上它的工作确实 litho 没有t 支持 4.1 jellybeans 之前的 android 吗? 调试日志要点
android - 使用带有“wrap_content”视图的 MountSpec 组件 - 如何实现 onMeasure()
我正在构建一些 Mount Spec 组件来呈现特定的视图。我所有的视图都应该有 height = "wrap_content"。
当我第一次开始研究它时,我还没有实现 onMerasure() 方法(使用 @OnMeasure 注释),所以组件不会显示任何东西!实现 onMeasure() 后,组件开始工作,但由于可用资源无法计算组件高度(应在 onMeasure 内完成)。
如何使 Litho Mount Spec 与没有固定高度的视图一起使用?
android - 如何使用 Litho.Edittext 处理按下的输入
在我当前的 android 项目中,我必须使用 Litho 框架。我现在面临的问题是如何使用 Litho EditText 小部件处理输入键。(按下软键盘上的输入键时调用请求)我在 LithoView 上尝试了 setOnKeyListener,它包含 EditText 但没有任何效果。因此,如果有人将 Litho 与 EditText 一起使用并且可以提供帮助,我会很高兴。
android - 如何在 facebook litho 上添加键盘支持
我正在尝试使用 facebook litho 构建用于电视的 android 应用程序。
我们需要支持键盘事件(上/下/左/右)来控制导航。
我可以在activity中通过onKeyDown拦截键盘事件,但是我不知道如何从activity中更新组件的状态。
android - 单击 Litho 中的父组件后更改文本值
考虑我正在创建一个包含两个文本子项的列,并在列视图上设置一个单击处理程序。单击列后,我想更改第一个文本的值。我怎样才能做到这一点?
android - FB Litho:如何为文本设置自定义字体
我的问题是如何Text
在 Facebook 的 UI 框架Litho中为组件设置自定义字体?
以下是我的Text
组件: