Android 数独中细胞的绘制区域
我想画一个选定的数独数字所属的正方形 此代码用于打印行和列:Android 数独中细胞的绘制区域,android,algorithm,cell,paint,sudoku,Android,Algorithm,Cell,Paint,Sudoku,我想画一个选定的数独数字所属的正方形 此代码用于打印行和列: //Pintem la fila del nombre seleccionat for (int i = 0; i < parent.getChildCount(); i++) { TextView child = (TextView) parent.getChildAt(i); if ((i/9)==x) {
//Pintem la fila del nombre seleccionat
for (int i = 0; i < parent.getChildCount(); i++) {
TextView child = (TextView) parent.getChildAt(i);
if ((i/9)==x) {
//child.setBackgroundColor(Color.parseColor("#75FFEE"));
child.setBackground(getDrawable(R.drawable.contornfonsblau));
}
}
//Pintem la columna del nombre seleccionat
for (int i = 0; i < parent.getChildCount(); i++) {
TextView child = (TextView) parent.getChildAt(i);
if ((i%9)==y) {
//child.setBackgroundColor(Color.parseColor("#75FFEE"));
child.setBackground(getDrawable(R.drawable.contornfonsblau));
}
}
//Pintem la fila del nombre seleccionat
对于(int i=0;i
除了广场,我也想要同样的
您可以通过使用整数除法将小正方形的x和y坐标除以3来找到数字所属的大正方形,因为大正方形是3x3小正方形 因此,进行与上面相同的比较,但事先将两边除以3。您还需要同时检查x和y:
for (int i = 0; i < parent.getChildCount(); i++) {
TextView child = (TextView) parent.getChildAt(i);
if ((((i/9)/3)==(x/3)) && (((i%9)/3)==(y/3))) {
child.setBackground(getDrawable(R.drawable.contornfonsblau));
}
}
您可以通过使用整数除法将小正方形的x和y坐标除以3来找到数字所属的大正方形,因为大正方形是3x3个小正方形 因此,进行与上面相同的比较,但事先将两边除以3。您还需要同时检查x和y:
for (int i = 0; i < parent.getChildCount(); i++) {
TextView child = (TextView) parent.getChildAt(i);
if ((((i/9)/3)==(x/3)) && (((i%9)/3)==(y/3))) {
child.setBackground(getDrawable(R.drawable.contornfonsblau));
}
}