我喜欢在Android示例中使用记录器的方式,并希望在我的应用程序中实现相同的方式。但我发现很难理解控制流程。有人可以帮助我理解它。
我正在推荐RecyclerView Sample。
下载链接:https://developer.android.com/downloads/samples/RecyclerView.zip
项目结构的屏幕截图:
Edit1:我没有得到实际发生的事情,它说用于管道:接收日志数据的下一个节点...... 。以及如何在控制台和UI上打印消息。
LogWrapper类的代码部分:
// For piping: The next node to receive Log data after this one has done its work.
private LogNode mNext;
/**
* Returns the next LogNode in the linked list.
*/
public LogNode getNext() {
return mNext;
}
/**
* Sets the LogNode data will be sent to..
*/
public void setNext(LogNode node) {
mNext = node;
}
我想知道logger包下各种类之间的关系,以及当我们从activity,fragment或adapter调用Log.d()时控件如何在它们之间流动。
答案 0 :(得分:0)
通过链接列表实现管道。
在MainActivity.initializeLogging()
中填写此列表。
LogWrapper - > MessageOnlyLogFilter - >日志查看
所有这些类都实现了接口LogNode(可以打印)和列出相似的行为(节点并移动到下一个)。
LogWrapper将所有消息发送到标准记录器,如果存在任何节点,它将管道消息(在我们的示例中为MessageOnlyLogFilter)。
MessageOnlyLogFilter会删除除消息之外的所有内容并将其推送到下一个节点(LogView)。
LogView扩展了TextView并在屏幕上打印日志。