getContext() 不存在

Posted

技术标签:

【中文标题】getContext() 不存在【英文标题】:getContext() doesn't exist 【发布时间】:2014-10-24 14:04:19 【问题描述】:

所以我一直在官方网站上接受 android 开发人员培训,他们希望我们最终实例化我们的数据库。

所以他们告诉我们使用这段代码:

FeedReaderDbHelper mDbHelper = new FeedReaderDbHelper(getContext());

但是,getContext() 方法出现错误。它声明它找不到该方法的符号。

所以我搜索了源代码,但在 View 类中找不到该方法。这是不推荐使用的方法吗?如果这不是一个选项,还有其他方法可以获取视图的上下文吗?

谢谢!

【问题讨论】:

有一个错字:geContext()。这已经是你的问题了吗? 这取决于你在哪里使用这个sn-p。它是在活动或片段中还是只是普通的类? @SME_Dev 如果这是整个问题,我会笑死的。 尝试构造实例、活动、服务等的类是什么类型的? 它会匹配错误描述,因为“symbol not found”表示语法错误。无论如何,多一点代码将有助于找到解决方案。 【参考方案1】:

你传递的代码行是:

FeedReaderDbHelper mDbHelper = new FeedReaderDbHelper(geContext());

如果您替换任何这些代码行,它应该可以工作:

FeedReaderDbHelper mDbHelper = new FeedReaderDbHelper(getContext());

或者

FeedReaderDbHelper mDbHelper = new FeedReaderDbHelper(getApplicationContext());

或者

FeedReaderDbHelper mDbHelper = new FeedReaderDbHelper(this);

Context的android开发者文档:

https://developer.android.com/reference/android/content/Context.html

你可能会发现这个问题也很有帮助,它解释了 Context 的用途:

What is 'Context' on Android?

【讨论】:

【参考方案2】:

在您的代码中,您使用了 geContext() 将其更改为 getContext()getApplicationContext() 或者如果从活动内部调用对象只需传递 this

【讨论】:

【参考方案3】:

View 类确实有一个getContext 方法。

您有错字,或者您的代码不在 View 子类的非静态方法中。

【讨论】:

我可以在由其他类扩展的类中使用 getContext 吗? 这让我出错了: snag.gy/hOPXk.jpg【参考方案4】:

我就是这样弄的

    主活动

    FeedReaderContract 合约 = new FeedReaderContract(this);

    我编辑了 FeedReaderContract 类的构造函数

    mDbHelper = new FeedReaderDbHelper(getContext());

    getContext()方法

    公共上下文 getContext() 返回上下文;

【讨论】:

请添加您提出的解决方案的描述。

以上是关于getContext() 不存在的主要内容,如果未能解决你的问题,请参考以下文章

struts中如何查看配置文件中是否存在某个返回值

没有 jquery 背景:-webkit-canvas(?) 的 java 脚本不包含“.getCSSCanvasContext”但“.getContext('2d'); 代替

getContext('webgl') 与 getContext('3d') 有啥区别?

SQL语句 存在就更新不存在就插入

PHP会话变量在不应该存在的时候存在,在应该存在的时候不存在

不存在与不存在