在片段java类中使用“this”和getLastSignedInAccount时出现错误[重复]
Posted
技术标签:
【中文标题】在片段java类中使用“this”和getLastSignedInAccount时出现错误[重复]【英文标题】:In fragment java class getting an error when using "this" with getLastSignedInAccount [duplicate] 【发布时间】:2020-12-12 17:44:21 【问题描述】:在我的片段 java 类中,“this”语句中的 getLastSignedInAccount 出现错误,以下是代码:
GoogleSignedInAccount signInAccount = GoogleSignIn.getLastSignedInAccount(this);
if(signInAccount != null)
name.setText(signInAccount.getDisplayName());
mail.setText(signInAccount.getEmail());
【问题讨论】:
欢迎来到***。请通过此链接一次。 ***.com/help/how-to-ask 方法定义为#getLastSignedInAccount(Context context)
。你已经通过了 context 。在片段中,您可以使用getContext()
来使用上下文。
【参考方案1】:
片段是实现部分活动的可重用类。片段通常定义用户界面的一部分。片段必须嵌入到活动中;它们不能独立于活动运行。所以我的意思是你不能从嵌入式片段中获取访问主活动,所以有一个类似这样的代码而不是(这个):
GoogleSignIn.getLastSignedInAccount(getActivity());
片段不继承 Context 类。因此,您必须使用 getActivity() 方法来获取父活动。
【讨论】:
【参考方案2】:在片段中你需要使用 getContext() 而不是这个
【讨论】:
即使您的答案是正确的,它也不会教 OP(或任何人)为什么他们必须更改它,请考虑将其添加到您的答案中以上是关于在片段java类中使用“this”和getLastSignedInAccount时出现错误[重复]的主要内容,如果未能解决你的问题,请参考以下文章