1

在我的活动中,onCreateView我有两个不同的源视图来膨胀 UI 元素。因此,我使用Bind 方法调用来膨胀属于一个源视图的所有 UI 元素以及属于另一个源视图的findViewById()那些UI 元素。ButterKnife's

但这只有在findViewById优先于时才有效ButterKnife,否则第一组元素也将附加到第二个源视图。

那么findViewById优先级是真的ButterKnife吗?

4

2 回答 2

3

在幕后ButterKnife's Bind执行findViewById的是 id 的整数值,而不是 lookup R.id.something,这意味着这两种方法实际上执行相同并且具有相同的“优先级”,它只取决于您首先执行哪个。

所以答案是“不,ButterKnife 的 Bind 没有优先级,尽管由于查找,执行速度可能会快一些”

于 2015-09-21T07:05:57.777 回答
0

Bas van Stein 是对的 ButterKnife 的 Bind 没有优先级,但您可以使用Android Priority Job Queue

Priority Job Queue 是专门为 Android 编写的 Job Queue 的实现,用于轻松安排在后台运行的作业(任务),提高用户体验和应用程序稳定性。

您将后台任务定义为作业并将它们排入您的 JobManager 实例。作业经理将负责优先级

于 2015-09-21T07:13:22.840 回答