2010-11-27 41 views
1

我不明白这个代码页码68-69在你的Android的书。代码中使用的一些方法对我来说是新的。任何人都可以详细解释代码吗?任何机构可以解释这个代码从你好Android的书

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... 
} 
+0

你如何告诉我们你不明白? – Falmarri 2010-11-27 07:29:33

回答

2

它所做的就是当你调用openNewGameDialog(),它会创建一个alertdialog与从资源文件的选项分配的标题和目录(“R.array.difficulty”是一个整数值最终指向在文件/res/values/arrays.xml中声明的字符串数组)。 AlertDialog是一种创建从用户获取输入的简单方法。它也可以用于输出,但许多人喜欢Toast来完成这项任务。在末尾的 .show()将该对话框带到前台。

当在这个调用中添加项目时,他们被分配一个onClick监听器,当一个项目被点击时,它发送该项目的索引到startGame。在该函数中,它只向logcat调试系统发送包含索引的消息。

相关问题