繁体   English   中英

用于活动和视图的findViewById的超类型

[英]Super-type for findViewById for Activity and View

您可以在View以及Activity上调用findViewById 现在,根据情况,我都需要在两者上调用它。 我想避免类型检查或null检查并使用它们中的任何一个,但希望在传递参数时将其转换为一种类型。

是否有一些通用接口可以调用findViewById 因为从源代码看,这似乎只是为两者实现的,而没有连接到超类或接口。

您可以在Activity执行的操作是获取装饰视图,在该视图上调用findViewById

public void myMethodRequiringView(View view) {
    view.findViewById(...);
}

Activity

myMethodRequiringView(getWindow().getDecorView());

Fragment

myMethodRequiringView(rootView);

如果您查看ActvityWindow Android类的源代码,您会发现这正是Actviity.findViewById所调用的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM