1

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

对于 GamePlay 类型,方法 getString(int) 未定义

这对我来说很复杂,因为我想在活动之外调用这个函数,并且不知何故,项目的结构很奇怪。

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

public class SampleGame extends AndroidGame

它扩展自AndroidGame具有以下声明:

public abstract class AndroidGame extends Activity implements Game

SampleGame执行SplashLoadingScreen具有以下声明的 a:

public class SplashLoadingScreen extends Screen

SpalshLoadingScreenfinally 加载一些东西,然后调用GamePlay

public class GamePlay extends Screen

因此,GamePlay它远非Activity...

那么我该如何使用该getString(int)功能?

4

1 回答 1

2

因为getString(int)你只需要一个Context对象。你可以将它传递给你的 GamePlay 对象,例如有一个 constructor ,但如果你不需要 Activity 上下文,请GamePlay(Context c)确保传递 Application Context ,因为 GarbageCollector 将无法收集你的getApplicationContext()如果某处有对其上下文的引用,则为活动。

于 2013-03-24T11:27:59.513 回答