현재 안드로이드에 테이블 레이아웃이 있습니다. 이것은 시간 테이블로 설정하고 다음과 같이 표시됩니다 : TableLayout 안드로이드에서 TextView의 위치 얻기
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/scrollview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:fadeScrollbars="false" >
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/table"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:stretchColumns="*" >
<TableRow
android:id="@+id/tableRow1"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/blank"
android:background="@drawable/border" />
<TextView
android:id="@+id/mon"
android:background="@drawable/border"
android:text="@string/monday" />
<TextView
android:id="@+id/tues"
android:background="@drawable/border"
android:text="@string/tuesday" />
<TextView
android:id="@+id/wed"
android:background="@drawable/border"
android:text="@string/wednesday" />
<TextView
android:id="@+id/thurs"
android:background="@drawable/border"
android:text="@string/thursday" />
<TextView
android:id="@+id/fri"
android:background="@drawable/border"
android:text="@string/friday" />
<TextView
android:id="@+id/sat"
android:background="@drawable/border"
android:text="@string/Saturday" />
<TextView## Heading ##
android:id="@+id/sun"
android:background="@drawable/border"
android:text="@string/Sunday" />
</TableRow>
<TableRow
android:id="@+id/tableRow2"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/nine"
android:background="@drawable/border"
android:text="@string/nine" />
<TextView
android:id="@+id/nineone"
android:background="@drawable/border" />
<TextView
android:id="@+id/ninetwo"
android:background="@drawable/border" />
<TextView
android:id="@+id/ninethree"
android:background="@drawable/border" />
<TextView
android:id="@+id/ninefour"
android:background="@drawable/border" />
<TextView
android:id="@+id/ninefive"
android:background="@drawable/border" />
<TextView
android:id="@+id/ninesix"
android:background="@drawable/border" />
<TextView
android:id="@+id/nineseven"
android:background="@drawable/border" />
</TableRow>
<TableRow
android:id="@+id/tableRow3"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/ten"
android:background="@drawable/border"
android:text="@string/ten" />
<TextView
android:id="@+id/tenone"
android:background="@drawable/border" />
<TextView
android:id="@+id/tentwo"
android:background="@drawable/border" />
<TextView
android:id="@+id/tenthree"
android:background="@drawable/border" />
<TextView
android:id="@+id/tenfour"
android:background="@drawable/border" />
<TextView
android:id="@+id/tenfive"
android:background="@drawable/border" />
<TextView
android:id="@+id/tensix"
android:background="@drawable/border" />
<TextView
android:id="@+id/tenseven"
android:background="@drawable/border" />
</TableRow>
<TableRow
android:id="@+id/tableRow4"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/eleven"
android:background="@drawable/border"
android:text="@string/eleven" />
<TextView
android:id="@+id/elevenone"
android:background="@drawable/border" />
<TextView
android:id="@+id/eleventwo"
android:background="@drawable/border" />
<TextView
android:id="@+id/eleventhree"
android:background="@drawable/border" />
<TextView
android:id="@+id/elevenfour"
android:background="@drawable/border" />
<TextView
android:id="@+id/elevenfive"
android:background="@drawable/border" />
<TextView
android:id="@+id/elevensix"
android:background="@drawable/border" />
<TextView
android:id="@+id/elevenseven"
android:background="@drawable/border" />
</TableRow>
<TableRow
android:id="@+id/tableRow5"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/twelve"
android:background="@drawable/border"
android:text="@string/twelve" />
<TextView
android:id="@+id/twelveone"
android:background="@drawable/border" />
<TextView
android:id="@+id/twelvetwo"
android:background="@drawable/border" />
<TextView
android:id="@+id/twelvethree"
android:background="@drawable/border" />
<TextView
android:id="@+id/twelvefour"
android:background="@drawable/border" />
<TextView
android:id="@+id/twelvefive"
android:background="@drawable/border" />
<TextView
android:id="@+id/twelvesix"
android:background="@drawable/border" />
<TextView
android:id="@+id/twelveseven"
android:background="@drawable/border" />
</TableRow>
<TableRow
android:id="@+id/tableRow6"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/one"
android:background="@drawable/border"
android:text="@string/one" />
<TextView
android:id="@+id/oneone"
android:background="@drawable/border" />
<TextView
android:id="@+id/onetwo"
android:background="@drawable/border" />
<TextView
android:id="@+id/onethree"
android:background="@drawable/border" />
<TextView
android:id="@+id/onefour"
android:background="@drawable/border" />
<TextView
android:id="@+id/onefive"
android:background="@drawable/border" />
<TextView
android:id="@+id/onesix"
android:background="@drawable/border" />
<TextView
android:id="@+id/oneseven"
android:background="@drawable/border" />
</TableRow>
<TableRow
android:id="@+id/tableRow7"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/two"
android:background="@drawable/border"
android:text="@string/two" />
<TextView
android:id="@+id/twoone"
android:background="@drawable/border" />
<TextView
android:id="@+id/twotwo"
android:background="@drawable/border" />
<TextView
android:id="@+id/twothree"
android:background="@drawable/border" />
<TextView
android:id="@+id/twofour"
android:background="@drawable/border" />
<TextView
android:id="@+id/twofive"
android:background="@drawable/border" />
<TextView
android:id="@+id/twosix"
android:background="@drawable/border" />
<TextView
android:id="@+id/twoseven"
android:background="@drawable/border" />
</TableRow>
<TableRow
android:id="@+id/tableRow8"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/three"
android:background="@drawable/border"
android:text="@string/three" />
<TextView
android:id="@+id/threeone"
android:background="@drawable/border" />
<TextView
android:id="@+id/threetwo"
android:background="@drawable/border" />
<TextView
android:id="@+id/threethree"
android:background="@drawable/border" />
<TextView
android:id="@+id/threefour"
android:background="@drawable/border" />
<TextView
android:id="@+id/threefive"
android:background="@drawable/border" />
<TextView
android:id="@+id/threesix"
android:background="@drawable/border" />
<TextView
android:id="@+id/threeseven"
android:background="@drawable/border" />
</TableRow>
<TableRow
android:id="@+id/tableRow9"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/four"
android:background="@drawable/border"
android:text="@string/four" />
<TextView
android:id="@+id/fourone"
android:background="@drawable/border" />
<TextView
android:id="@+id/fourtwo"
android:background="@drawable/border" />
<TextView
android:id="@+id/fourthree"
android:background="@drawable/border" />
<TextView
android:id="@+id/fourfour"
android:background="@drawable/border" />
<TextView
android:id="@+id/fourfive"
android:background="@drawable/border" />
<TextView
android:id="@+id/foursix"
android:background="@drawable/border" />
<TextView
android:id="@+id/fourseven"
android:background="@drawable/border" />
</TableRow>
<TableRow
android:id="@+id/tableRow10"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/five"
android:background="@drawable/border"
android:text="@string/five" />
<TextView
android:id="@+id/fiveone"
android:background="@drawable/border" />
<TextView
android:id="@+id/fivetwo"
android:background="@drawable/border" />
<TextView
android:id="@+id/fivethree"
android:background="@drawable/border" />
<TextView
android:id="@+id/fivefour"
android:background="@drawable/border" />
<TextView
android:id="@+id/fivefive"
android:background="@drawable/border" />
<TextView
android:id="@+id/fivesix"
android:background="@drawable/border" />
<TextView
android:id="@+id/fiveseven"
android:background="@drawable/border" />
</TableRow>
</TableLayout>
</ScrollView>
사용자가 나는 그들이 클릭 한 정확한 셀의 위치를 얻을 수있을 걸려 라 앱에서 셀을 클릭
. 나는 열 ID를 얻으려고 노력하지만 완전한 지위를 얻을 수는 없습니다. 내 코드는 다음과 같습니다public class TimeTable extends Activity {
TextView tv;
TableRow row;
String dayName;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_time_table);
TableLayout group = (TableLayout) findViewById(R.id.table);
row = (TableRow) group.getChildAt(0);
for (int i = 0; i < group.getChildCount(); i++) {
row = (TableRow) group.getChildAt(i);
for (int j = 0; j < row.getChildCount(); j++) {
tv = (TextView) row.getChildAt(j);
registerForContextMenu(tv);
tv.setId(j);
tv.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Toast toast = Toast.makeText(getApplicationContext(), Integer.toString(v.getId()), Toast.LENGTH_LONG);
toast.show();
}
});
}
}
}
누구나 내가 전체 포지션을 얻을 수 있는지 알고 있습니까? 감사합니다
토스트 메시지가 TextView를 클릭 할 때 표시되는지 여부. 'tv.setClickable (true);'를 설정해야합니다. –
u는 테이블 레이아웃 대신 gridview를 선호 할 수 있습니다. –
안녕하십니까, 늦어서 반갑습니다. 예, 토스트 메시지가 나타납니다. 그것은 열의 위치를 표시하지만 행과 열 위치를 가져 오려고합니다. –