为多个活动的接口方法创建公共代码- Android(Kotlin)

nwnhqdif  于 2023-02-24  发布在  Kotlin
关注(0)|答案(2)|浏览(136)

我有一个接口,它有两个方法要重写。
有两个具有不同UI的活动,它们都需要相同的功能来覆盖该接口的方法。
现在,我可以在两个活动中实现该接口,还可以覆盖两个活动中的方法。
但是我不想让我的代码重复。有没有什么通用的方法可以让我的重写方法通用,这样我就不需要再写同样的代码了?
简而言之,我只想写一次接口实现代码,它将被两个独立的活动使用。

ercv8c1e

ercv8c1e1#

所以你可以只创建一个基本活动类并实现这个接口,在另一个活动中你可以扩展这个基本类,如果你需要的话,覆盖这两个。但是我不推荐这样做,因为遵循最佳实践可以更好地避免在你的代码中创建新的规则,这会让你很难理解。但是更好的方法是检查你的架构,也许你可以只拥有一个活动和一个片段,并在两者之间共享视图模型。

lmvvr0a8

lmvvr0a82#

为什么一个Activity需要直接实现一个接口呢?它不是典型的类类型,如果你这样做的话,很容易造成内存泄漏和其他bug。
在一个新的类中实现接口,您可以在每个活动中重用它,这样就解决了代码重用的问题。
或者,如果您并不需要接口,可以创建执行所需行为的Activity扩展函数,这样您就可以在不重复代码的情况下将功能添加到每个Activity。

相关问题