我无法在Hello Android图书的第68-69页中理解此代码。代码中使用的一些方法对我来说是新的。任何人都可以详细说明和解释代码。
private static final String TAG = "Sudoku" ;
private void openNewGameDialog() {
new AlertDialog.Builder(this)
.setTitle(R.string.new_game_title)
.setItems(R.array.difficulty, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialoginterface,int i) {
startGame(i);
}
})
.show();
}
private void startGame(int i) {
Log.d(TAG, "clicked on " + i);
// Start game here...
}
最佳答案
它所做的只是当您调用openNewGameDialog()时,它将创建一个具有分配的标题和资源文件中的选项列表的Alertdialog(“ R.array.difficulty”是一个整数值,最终指向文件中声明的字符串数组) /res/values/arrays.xml)。 AlertDialog是一种易于创建的从用户获取输入的方法。它也可以用于输出,但是许多人更喜欢Toast。的
它末尾的.show()将对话框置于前台。
在该调用中添加项目时,将为它们分配一个onClick侦听器,单击该侦听器后,它将把该项目的索引发送到startGame。在该功能中,它仅将包括索引的消息发送到logcat调试系统。
关于android - 任何人都可以从Hello Android书中解释此代码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4290414/