如何解决传递Context或使用view.getContext真的有关系吗?
因此,我有两个选择来获取context
。请参见实用程序类中的以下两种方法(为清晰起见,进行了清理)。
public static void onCopyClicked(Context context,ImageView copy){
copy.setVisibility(View.GONE);
Intent intent = new Intent(context,NextActivity.class);
context.startActivity(intent);
}
public static void onCopyClicked(ImageView copy){
Context context = copy.getContext();
copy.setVisibility(View.GONE);
Intent intent = new Intent(context,NextActivity.class);
context.startActivity(intent);
}
我可以传递上下文,也可以直接从视图中获取上下文。我猜我更喜欢第二个参数,因为它要传递的参数要少一个,但是我想知道getContext()
调用是否昂贵。我不是在尝试微管理我的代码,而是在尝试遵循最佳实践(如果存在这种情况)。
解决方法
您可以使用第二个选项。
在getContext()
上致电View
并不昂贵。创建context
时,View
引用将被保存,而getContext()
方法将返回该引用。
检查View
的{{3}}和constructor source code。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。