问题标签 [mortar]

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 回答
451 浏览

android - 为 Flow 和 Mortar 应用程序编写测试

我想知道是否有任何为 Flow 和 Mortar Android 应用程序编写单元测试的示例。MVP 模式的部分优势在于它提供了表示和视图逻辑的分离,而表示逻辑就是您要编写测试的对象。我希望我能看到一些关于人们如何使用 Flow & Mortar 进行此操作的示例,以及他们所依赖的库。建立一些最佳实践会很棒。

编辑:值得注意的是,谷歌刚刚发布了对 Android 的 junit 支持

0 投票
0 回答
105 浏览

android - 如何将现有片段插入到 Mortar 架构中

让我们考虑一下这种情况。我们正在使用 Mortar 和 Flow 构建一个应用程序来简化事情,然后突然间我们发现我们可以使用一些旧的片段。这个片段有点复杂,所以我们想以某种方式将它们注入到我们的视图中。

如果我们有这样的 Mortar View,这是否可能:

我们的片段是这样的:

这当然不是开箱即用的,那么我们该如何实现呢?谢谢!

0 投票
1 回答
1940 浏览

java - Dagger 错误:无法注入非静态内部类

我正在尝试使用匕首在我的应用程序中实现依赖注入。我的结构与“使用 Flow 和 Mortar 的更简单的 Android 应用程序”中描述的结构相似

我有一DayScreen堂课:

DateScreen是一个摘要:

我尝试通过构造函数和槽场注入在 Module 和 Presenter 中注入api和,但它咳嗽了同样的错误formattererror: Can't inject a non-static inner class:...

有人知道为什么它需要静态类吗?是否有任何更改使我上面提到的文章无关紧要?

谢谢。

0 投票
1 回答
1312 浏览

android - 在 Mortar 屏幕中获取 Activity 的推荐方法?

我正在使用 Mortar 和 Flow 为我的应用程序提供动力。如果我有以下视图:

以及以下屏幕:

现在我想访问使用这个屏幕和视图的活动。我可以访问一些 Activity 方法,例如:

我试图在我的屏幕内投射这样的上下文:

但这当然会引发以下异常:

如何获得该活动?谢谢你。

0 投票
0 回答
102 浏览

java - Mortar 中用@Singleton 注释的类的范围是什么

Mortar 如何处理用 注释的类@Singleton?澄清一下,当我使用 Dagger 并在每个活动创建时将Activity图表添加到Application图表中时,我还会得到一个活动范围的单例,该类的注释@Singleton在任何模块中都没有提供方法。

如果我改为开始使用 Mortar 并MortarScope为每个屏幕定义一个,有没有一种方法可以将事物范围限定在一个屏幕上,而无需明确地为它们创建一个提供?我不想包含 a 的原因Provides是能够将其他对象注入到我的活动助手实例中,而不必从构造函数中手动设置字段。

0 投票
4 回答
1408 浏览

android - 将 Flow & Mortar 与 ViewPager 一起使用

我正在使用 Flow 和 Mortar 编写应用程序。当涉及到带有标签的视图寻呼机时,我无法弄清楚如何使用它。

我能想到的唯一方法是将 ViewPager 屏幕视为单个屏幕,并最终使用 Fragments 来构建它。但使用 Flow & Mortar 的全部意义在于摆脱 Fragment 并简化生命周期。

任何帮助表示赞赏。谢谢。

0 投票
0 回答
991 浏览

android - Mortar / Flow 样本 NoClassDefFoundError: com.example.mortar.MortarDemoApplication$1

我很难让 Mortar/Flow 示例通过 Eclipse 和 Maven 工作。

我的.apt_generated文件夹已创建,该目录中有许多生成的类,但MortarDemoApplication$1由于某种原因没有生成。

我已经经历了许多示例和其他线程来解决这个问题,但似乎找不到任何有效的解决方案。

我在 Eclipse 中启用了注释处理,并且我已经将工厂路径配置为包括 dagger、dagger-compiler 和 javawriter。我已经读过这不是必需的,因为 Eclipse m2e-apt 插件应该可以处理这个问题,但这似乎是我可以.apt_generated生成源代码的唯一方法。

某处是否有一套明确的说明可能我错过了?

更新 1

从命令行(无 Eclipse)仅使用 Maven 构建和运行会带来一系列问题。

首先,最新的 Maven 3.2.5 在尝试mvn install从迫击炮目录运行时会抛出以下错误:

切换回 Maven 3.1.1 后mvn deploy可以工作,但是当mvn android:run通过 logcat 运行它时,迫击炮 helloworld 应用程序崩溃并出现以下错误:

0 投票
0 回答
134 浏览

android - 如果加载缓慢(例如 GoogleMap),Flow 和 Mortar 可以在后台加载屏幕吗?

我在 Android 应用程序中的某些页面加载缓慢时遇到问题。我通过将慢速部分推入抢占用户需求的服务中修复了许多问题。

我正在努力使用 GoogleMaps,在最近的 Android 手机上加载速度很慢,大约需要 5 秒。Square 的 Mortar 和 Flow 系统是否允许在后台预加载?我可以在蓝图的背景中填充我的视图,然后将它们带到前台吗?

0 投票
2 回答
752 浏览

android - Mortar:如何将 Presenter 用于列表项/适配器

我使用带有 ViewHolder 的自定义适配器和带有按钮的项目视图的列表。我想通过单击演示者中的按钮来处理一些事情。

如何将演示者与这些项目视图联系起来?

0 投票
1 回答
698 浏览

eclipse - Eclipse 中的 Dagger2 不生成类

我正在尝试使用 Mortar 设置一个新的应用程序。为此,我正在尝试构建迫击炮 HelloWorld 项目。我必须使用 Eclipse,因为 Android Studio 不支持原生调试(我更喜欢 Android Studio 和 Gradle)。

  • 当我按照此处mortar-helloworld所述设置 Dagger1 时,Dagger1的示例在 Eclipse (Ant) 中工作
  • mortar-hellodagger2示例在我使用 Maven 构建时有效
  • 但是,当我尝试mortar-hellodagger2使用 Eclipse (Ant) 构建示例时,我得到一个ClassNotFoundException: com.example.mortar.Dagger_Main_Component.

我确实像 Dagger1 一样设置了 Dagger2 并将库放在这样的文件夹中:

有人用 Dagger2 成功设置了 Eclipse 吗?