【问题标题】:The method getString(int) is undefined for the type GamePlay [closed]对于 GamePlay 类型,方法 getString(int) 未定义 [关闭]
【发布时间】:2013-03-24 11:22:17
【问题描述】:

我在使用 getString 函数读取位于 values 文件夹中的字符串时遇到问题。我得到下一个错误:

方法 getString(int) 未为 GamePlay 类型定义

这对我来说很复杂,因为我想在活动之外调用这个函数,而且项目的结构有点奇怪。

我的项目是一个游戏,当你运行游戏时你运行SampleGame

public class SampleGame extends AndroidGame

它是从AndroidGame 扩展而来的,具有以下声明:

public abstract class AndroidGame extends Activity implements Game

SampleGame 执行具有以下声明的SplashLoadingScreen

public class SplashLoadingScreen extends Screen

SpalshLoadingScreen终于加载了一些东西然后调用GamePlay

public class GamePlay extends Screen

所以GamePlay 远不是Activity...

那我该如何使用getString(int)函数呢?

【问题讨论】:

  • GamePlayScreengetString(int) 功能吗?我猜不是,这就是错误的原因。

标签: java android eclipse android-activity getstring


【解决方案1】:

对于getString(int),您只需要一个Context 对象。您可以将它传递给您的GamePlay 对象,例如有一个构造函数GamePlay(Context c),但如果您不这样做,请确保传递应用程序上下文getApplicationContext()需要一个 Activity 上下文,因为如果某处有对其上下文的引用,GarbageCollector 将无法收集您的 Activity。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-30
    相关资源
    最近更新 更多