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 &#61; 0; p <10; p&#43;&#43;) {
final int iBtn &#61; p; // 声明final变量就可以内部类使用
btnNums[iBtn].setOnClickListener(new OnClickListener() {
&#64;Override
public void onClick(View arg0) {
datap[j - 1][i - 1] &#61; iBtn;
for (int i &#61; 1; i <&#61; 9; i&#43;&#43;) {
for (int j &#61; 1; j <&#61; 9; j&#43;&#43;) {
if (datap[j - 1][i - 1] !&#61; num[j - 1][i - 1]) {
final Set setNumsIn9Cell &#61; jugde(
i, j);
Log.i("test", setNumsIn9Cell &#43; "");
if (setNumsIn9Cell
.contains(datap[j - 1][i - 1])) {
datawarn[j - 1][i - 1] &#61; warnCoclor;
} else {
datawarn[j - 1][i - 1] &#61; normCoclor;
}
}
}
}
invalidate();
numDialog.dismiss();
}
});
}
} else {
Toast.makeText(SudoView.this.getContext(), "原始数据不允许修改",
Toast.LENGTH_SHORT).show();
}
x &#61; 0;
y &#61; 0;
}
} // 要想在OntouchEvent里边调用画笔// 重新调用onDraw