我对Android很新,只是主要从教程视频中学习。当我尝试运行应用程序时,我遇到了一个致命异常的问题。我相信生成错误的代码部分在下面,我有一个char字母数组,我试图争抢,然后将某些按钮的文本设置为这些字母(即letter1A.setText(scrambleLettersChar [0])。我在代码的这一部分之上做了同样的事情并且工作得很好.TIA。
char[] solutionLetters = {letter1, letter2, letter3, letter4, letter5, letter6, letter7, letter8, letter9, letter10, letter11, letter12};
for (int i = 0; i < solutionLetters.length; i++) {
int randomIndex = (int) (Math.random() * solutionLetters.length);
char temp = solutionLetters[i];
solutionLetters[i] = solutionLetters[randomIndex];
solutionLetters[randomIndex] = temp;
}
String scrambleLettersString = new String(solutionLetters);
scrambleLettersChar = scrambleLettersString.toCharArray();
letter1A.setText(scrambleLettersChar[0]);
}
答案 0 :(得分:1)
此行中的错误:
letter1A.setText(scrambleLettersChar[0]);
将其更改为:
letter1A.setText(scrambleLettersChar[0] + "");
原因是当你调用setText时...调用了setText(int resId) 而不是setText(CharSequence)
答案 1 :(得分:0)
library(shiny)
library(shinyjs)
library(shinyBS)
shinyServer(function(input, output,session) {
ntext <- eventReactive(input$goButton, {
input$n
})
shinyjs::disable("goButton2")
output$nText <- renderText({
ntext()
})
})
是原因。您试图访问solutionLetters
数组中超出范围的项目。
使用solutionLetters
代替randInt(0, solutionLetters.size()-1
粗糙的代码,将来请发布您的堆栈跟踪。