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() 不存在的主要内容,如果未能解决你的问题,请参考以下文章
没有 jquery 背景:-webkit-canvas(?) 的 java 脚本不包含“.getCSSCanvasContext”但“.getContext('2d'); 代替
getContext('webgl') 与 getContext('3d') 有啥区别?