Android Studio에서 15 개의 TableRow로 구성된보기를 개발했으며 각 TableRow에는 15 개의 ImageView가 포함되어 있습니다. (각 ImageView는 정사각형 모양의 비트 맵을 저장하며 15 x 15 정사각형 매트릭스를 생성합니다). 대략 아래보기에서 onCreate의 관련 코딩 : 어떻게 알 수 있습니까Array 내에서 사용자가 클릭하는 ImageView를 얻는 방법은 무엇입니까?
TableLayout tableLayout = (TableLayout) findViewById(R.id.tableLayout);
TableRow[] tr = new TableRow[15];
for (int i = 0; i < 15; i++) {
tr[i] = new TableRow(this);
for (int j = 0; j < 15; j++) {
bmp = BitmapFactory.decodeResource(getResources(),R.drawable.jmpty);
imageViews[j] = new ImageView(this);
imageViews[j].setImageBitmap(bmp);
imageViews[j].setOnClickListener(new doSomething());
tr[i].addView(imageViews[j],oParams);
}
tableLayout.addView(tr[i]);
}
....
내 질문 인 이미지 뷰 OnClick 이벤트를 활용하여 사용자가 클릭되고 있었다 (= 15 = 225 X (15)가 총)? 즉, 사용자가 TableRow = 4에있는 imageViews [13]에있는 ImageView를 클릭하면이 x-y 좌표 정보 (예 : x = 13, y = 4)를 캡처하고 프로그램의 다른 부분으로 돌아갈 수 있습니까?
private class doSomething implements View.OnClickListener {
@Override
public void onClick(View v) {
ImageView iv = (ImageView) v;
......
// what I want:
int x = iv.GetImageViewNumber(); // how can I do this???
int y = iv.GetTableRowNumber(); // how can I do this???
또는 다른 방법이 있습니까?