Android 另一个“无法进行静态引用…”问题
我正在尝试编写一个包含一些视图的活动,一个fillView方法设置非静态的视图,因为它必须使用getContentResolver,一个静态方法从游标中进行随机选择,然后运行fillView方法 由于fillView不是静态的,pickRandom是静态的,所以我尝试初始化该类的一个实例,但现在它在instance.fillView行崩溃 下面是示例代码。任何帮助都将不胜感激。也许有一个更简单的方法来完成我想做的事情 谢谢, 乔希Android 另一个“无法进行静态引用…”问题,android,static,Android,Static,我正在尝试编写一个包含一些视图的活动,一个fillView方法设置非静态的视图,因为它必须使用getContentResolver,一个静态方法从游标中进行随机选择,然后运行fillView方法 由于fillView不是静态的,pickRandom是静态的,所以我尝试初始化该类的一个实例,但现在它在instance.fillView行崩溃 下面是示例代码。任何帮助都将不胜感激。也许有一个更简单的方法来完成我想做的事情 谢谢, 乔希 创建一个静态实例变量并在oncreate中设置: private
创建一个静态实例变量并在oncreate中设置:
private static myView instance;
一次创建
instance = this;
静态随机选取
instance.fillView();
创建一个静态实例变量并在oncreate中设置:
private static myView instance;
一次创建
instance = this;
静态随机选取
instance.fillView();
在pickRandom中,您尝试创建类的新实例。除此之外,您应该执行以下操作:
this.fillView();
我看不出你有什么用
但是,如果出于某种原因需要它,您可以像下面这样传递对视图的引用:
public static void pickRandom(myView v) {
// runs cursor, picks random entry, next I want to apply the result to
// view, so I run...
v.fillView();
}
在pickRandom中,您尝试创建类的新实例。除此之外,您应该执行以下操作:
this.fillView();
我看不出你有什么用
但是,如果出于某种原因需要它,您可以像下面这样传递对视图的引用:
public static void pickRandom(myView v) {
// runs cursor, picks random entry, next I want to apply the result to
// view, so I run...
v.fillView();
}
getContentResolver是静态的吗?我在这里看不到任何静态方法。pickRandom是静态的,不允许我在其中使用fillView。因此我添加了“myView v”实例,但这会导致崩溃。我在这里看不到任何静态方法。pickRandom是静态的,并且不允许我在中使用fillView。因此我添加了“myView v”实例,但这会导致实例上的崩溃;位。捕获了另一个导致错误的部分,现在工作正常。感谢您的大力帮助!StackOverlfow再次通过。仍在实例上崩溃。fillView;位。捕获了另一个导致错误的部分,现在工作正常。感谢您的大力帮助!StackOverlfow再次通过。这很困难,因为我在其他活动中使用了pickRandom方法,并且并不总是可以通过视图。如果我试试这个;它告诉我不能在静态上下文中使用它这很困难,因为我在其他活动中使用了pickRandom方法,并且并不总是可以传递视图。如果我试试这个;它告诉我不能在静态上下文中使用它