我正在制作数独游戏。有两个类:难度和Screen类。当按下“easy”按钮时,我想生成一个从1到9的随机数,这些数字应该转到Screen类布局。
我的“简单”按钮位于choosedifficulty
类布局中。
答案 0 :(得分:5)
您可以使用Intent附加功能在活动之间传递信息。在你的情况下,你可以做(假设我明白你想做什么):
public void startSudoku(int chosenDifficulty) {
Intent i = new Intent(this, // Your current activity
SudokuActivity.class); // The activity showing the Sudoku
i.addExtra("com.example.sudoku.DifficultyLevel", chosenDifficulty);
startActivity(i);
}
然后,在您的Sudoku活动的onCreate方法中,您可以获得难度级别:
private int difficulty = 0;
protected void onCreate(Bundle savedInstanceState) {
Bundle extras = getIntent().getExtras();
if (extras != null) {
difficulty = extras.getInt("com.example.sudoku.DifficultyLevel", 0);
}
}
答案 1 :(得分:2)
小心,因为数独不仅是“从1到9的随机数”,所以我建议你正确实现算法。 (看看http://en.wikipedia.org/wiki/Sudoku_algorithms)。
关于将数据从一个活动传递到另一个活动,您可以使用意图。例如:
//In the place you launch your game
Intent myIntent = new Intent(myContext, Screen.class);
//sudoku is a String, for example, that contains the sudoku you want to pass
myIntent.putExtra("sudokukey", sudoku);
startActivity(myIntent);
然后,检索数据:
Bundle bundle = getIntent().getExtras();
String mySudoku = bundle.getString("sudokukey");