gpt4 book ai didi

java - 如何从方法访问可绘制数组

转载 作者:行者123 更新时间:2023-12-02 11:01:56 26 4
gpt4 key购买 nike

我研究过类似的问题,但没有一个适合这个问题。我试图从名为 nextQuestion() 的方法名称访问可绘制数组,但我不断收到错误无法解析符号“ballArray”,请提供任何帮助。我只是觉得这应该有效,但不知道为什么。这是我的代码。

公共(public)类 MainActivity 扩展 AppCompatActivity {

    ImageView mBallDisplay;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

int quote;

mBallDisplay = (ImageView) findViewById(R.id.image_eightBall);
Button nextbutton = (Button) findViewById(R.id.nextbutton);
Button prevbutton = (Button) findViewById(R.id.prevbutton);

final int[] ballArray = {
R.drawable.ball1,
R.drawable.ball2,
R.drawable.ball3,
R.drawable.ball4,
R.drawable.ball5
};

//next button
nextbutton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {

nextQuestion();

}
});



//previous button
prevbutton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {


prevQuestion();
}
});

}

private void nextQuestion(){
mBallDisplay.setImageResource(ballArray[4]);
}

private void prevQuestion(){

}

}

最佳答案

您无法从 nextQuestion() 内访问 ballArray 的原因是它是在单独的方法中声明的。如果您希望从 nextQuestion() 内访问它,则需要使其在该级别可见:

ImageView mBallDisplay;

final int[] ballArray = {
R.drawable.ball1,
R.drawable.ball2,
R.drawable.ball3,
R.drawable.ball4,
R.drawable.ball5
};

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

int quote;

mBallDisplay = (ImageView) findViewById(R.id.image_eightBall);
Button nextbutton = (Button) findViewById(R.id.nextbutton);
Button prevbutton = (Button) findViewById(R.id.prevbutton);

//next button
nextbutton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {

nextQuestion();

}
});



//previous button
prevbutton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {


prevQuestion();
}
});

}

private void nextQuestion(){
mBallDisplay.setImageResource(ballArray[4]);
}

private void prevQuestion(){

}

}

关于java - 如何从方法访问可绘制数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51269645/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com