LayoutInflater flater =
LayoutInflater.from(this.getContext());
View view = flater.inflate(R.layout.number1to9, null);
//设置新建view
AlertDialog.Builder builder = new
AlertDialog.Builder(this.getContext());
builder.setView(view); //把view介入构造器中
final AlertDialog numDialog = builder.create();
//弹出框形式
numDialog.show(); //把弹出框显示出来
Button[] btnNums = new Button[11];
btnNums[1] = (Button) view.findViewById(R.id.button1);
btnNums[2] = (Button) view.findViewById(R.id.button2);
btnNums[3] = (Button) view.findViewById(R.id.button3);
btnNums[4] = (Button) view.findViewById(R.id.button4);
btnNums[5] = (Button) view.findViewById(R.id.button5);
btnNums[6] = (Button) view.findViewById(R.id.button6);
btnNums[7] = (Button) view.findViewById(R.id.button7);
btnNums[8] = (Button) view.findViewById(R.id.button8);
btnNums[9] = (Button) view.findViewById(R.id.button9);
btnNums[0] = (Button) view.findViewById(R.id.button0);
btnNums[10] = (Button) view.findViewById(R.id.button10);
btnNums[10].setOnClickListener(new OnClickListener() {
//监听弹出框中的按钮
@Override
public void onClick(View arg0) {
numDialog.dismiss();
}
});
for (int p = 0; p < 10; p++) {
final int iBtn = p; // 声明final变量就可以内部类使用
btnNums[iBtn].setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
datap[j - 1][i - 1] = iBtn;
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= 9; j++) {
if (datap[j - 1][i - 1] != num[j - 1][i - 1]) {
final Set setNumsIn9Cell = jugde(
i, j);
Log.i("test", setNumsIn9Cell + "");
if (setNumsIn9Cell
.contains(datap[j - 1][i - 1])) {
datawarn[j - 1][i - 1] = warnCoclor;
} else {
datawarn[j - 1][i - 1] = normCoclor;
}
}
}
}
invalidate();
numDialog.dismiss();
}
});
}
} else {
Toast.makeText(SudoView.this.getContext(), "原始数据不允许修改",
Toast.LENGTH_SHORT).show();
}
x = 0;
y = 0;
}
} // 要想在OntouchEvent里边调用画笔// 重新调用onDraw