我不是一名程序員,我只是想讓應用程序幫助我完成工作,所以我不知道編程的正確性。這就是說,這是我所反對的。我輸入一個數字1到100,然後我的應用程序將創建一個可滾動的tablelayout與多行。每一行都有一個TextView,一個EditText和其他的TextView這裏我的代碼:當edittext在動態創建的tablelay中更改1到50行的任何位置時,將更改textview?
TableLayout tL = (TableLayout)findViewById(R.id.tableLayout1);
// creates all the fields
for(int i = 1; i <= numOfInjWells; i++) {
TableRow tR = new TableRow(this);
// creates the textView
TextView tV1 = new TextView(this);
tV1.setText(" " + i + ": ");
// add edit text
EditText eT = new EditText(this);
eT.setText("Meter Reading");
eT.setInputType(InputType.TYPE_CLASS_NUMBER);
TextView tV2 = new TextView(this);
tV2.setText("");
// add the TextView and the editText to the new TableRow
tR.addView(tV1);
tR.addView(eT);
tR.addView(tV2);
// add the TableRow to the TableLayout
tL.addView(tR,new TableLayout.LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
} // end for statement
所以當我輸入一個號碼在EditText上(ET)一排的,我希望它然後計算它與數之間的差異我已經存儲在我的數據庫中(我已經知道如何從數據庫中獲得我需要的特定數字),然後在第一行中更改textview tV2,以便不顯示按鈕即可顯示差異。我遇到的問題是如何將第一行的edittext(eT)與textview(tV2)相關聯,因爲所有edittext和textviews都具有相同的名稱eT或tV2
感謝您的幫助,我很抱歉我對編碼知之甚少。
編輯:我想過加入
eT.setId(i);
tV2.setId(i);
,但我不知道如何使用,在我的計算。
我已經查看了列表視圖,但由於缺乏編碼知識,我迷上了他們,或者我不能讓他們編譯沒有錯誤。我一直在試圖找到教程來幫助我,但我沒有提出足夠接近我正在做的事情,以便能夠滿足我的需求。感謝您的幫助,我會嘗試這個,看看我能不能做到這一點 – deerkiller11 2012-07-11 20:54:27
@ deerkiller11你設法做些什麼?另外我對ListView的建議可能不是一個好主意,因爲ListView行中的EditText不能很好地工作。另一種方法是保持當前的表格佈局並構建某種分頁以僅顯示錶格的一部分。 – Luksprog 2012-07-13 09:42:59
不是我正在查看listview選項,但我還沒有能夠得到它的工作。 – deerkiller11 2012-07-15 03:37:58