3

我在我的 Android 项目中使用 GreenDao,并且我已经成功生成了我的数据库模式,但我遇到了一个问题。我生成的类需要实现一个与 db 无关的接口。在生成器中,我使用了以下方法:

myEntity.implementsInterface("com.my.app.myinterface");

然后在生成之后,该类在其标题中具有此接口的实现注释,但代码中当然没有 Override 方法。我尝试在生成器项目中放置一个带有我的接口的包,但仍然不会自动出现方法。我应该手动将它们插入

// KEEP METHODS - put your custom methods here ... // KEEP METHODS END

部分?

4

1 回答 1

0

根据GreenDAO 文档,您不需要编写任何方法,因为这些类在每次运行时都会被覆盖(这意味着您所做的每次更改都将被删除),如果您需要自己的行为,您可以使用 Keep Sections :

保留部分

实体类在每次生成器运行时都会被覆盖。为了允许向您的实体添加自定义代码,greenDAO 具有“保留”部分。要启用它们,请在架构上使用 enableKeepSectionsByDefault(),或在选定实体上使用 setHasKeepSections(true)。启用后,实体中会生成三个保留部分:

// KEEP INCLUDES - put your custom includes here
// KEEP INCLUDES END
...
// KEEP FIELDS - put your custom fields here
// KEEP FIELDS END
...
// KEEP METHODS - put your custom methods here
// KEEP METHODS END

现在,您可以将自定义代码放在 KEEP [...] 和 KEEP [...] END 之间。并且不要触摸 KEEP 评论。保持部分内的代码在代码生成期间被保留。备份或提交代码是个好主意,以防出现意外错误。

也看看这个相关的问题

于 2015-12-17T10:49:47.780 回答