Re: [開發] 關於動態產生TextView

看板AndroidDev作者 (頻率)時間13年前 (2011/03/08 12:14), 編輯推噓1(101)
留言2則, 1人參與, 最新討論串2/3 (看更多)
※ 引述《Diazo ()》之銘言: : ※ [本文轉錄自 Android 看板 #1DTL___P ] : 作者: Diazo () 看板: Android : 標題: [開發] 關於動態產生TextView : 時間: Tue Mar 8 06:45:17 2011 : 小弟目前在嘗試做一個類似條列式記事本的軟體 : 有一個EditText 讓使用者輸入文字 : 一個Button 按下就可以儲存在EditText內所輸入的文字 : 最後是動態產生的TextView, 也就是說 : 每按下一次Button 就會創立一個TextView : 然後把EditText的文字顯示在TextView裡 : 以下是我在動態創建TextView的程式碼 : public void setTextView(LinearLayout layout, : Context context, : String MSG) { : tv = new TextView(context); : tv.setText(MSG); //MSG為EditText內的字串 : tv.setId(entryNumber); //每一個TextView都有自己的Id : tv.setClickable(true); : tv.setOnClickListener(new MyOnClickListener()); : //設置可被選取 : layout.addView(tv); : } : 目前在創建上都可以實現 : 但進一步我想要能夠選取以儲存的TextView : 然後讓本來輸入的字串再傳回EditText以供修改 : 旦目前我在 MyOnClickListener() 內部的程式碼如下 : public void onClick(View v) { : int textId = tv.getId(); //取得選取的TextView的Id : tv.setId(textId); : editText.setText(tv.getText().toString()); : } 根據您上一段code猜想 tv應該都是最後一個建立的TextView 所以getId都是抓到最後一個 應該使用 onClick(View v) 裡的v 物件 這才是目前使用者點選的View =>int textId = v.getId(); 提供另一種方式 => TextView tv = (TextView) v.getTag(); => editText.setText(tv.getText().toString()); 請參考試試囉 : 我想出錯的部份應該是在抓取點選的TextView的Id : 因為我不管點哪一個 : 他回傳的都是我最後一次輸入的字串 : 想請教該如何解決這個問題 : 實在是非常感謝... -- 故意和妳剛好選同一節的課 故意在7-11和妳偶然相遇 故意剛好一直出現在妳視線內 故意在回家的路上碰巧遇到妳 沒什麼..因為沒其他課了 沒什麼..我只是買東西 沒什麼..大概是剛好吧 沒什麼..這是我回家的路線 其實一切都是沒什麼 沒什麼..只是我愛妳 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.45.172.171

03/09 15:37, , 1F
非常謝謝...不過後來我發現用ListView反而簡單許多
03/09 15:37, 1F

03/09 15:37, , 2F
但還是相當謝謝....
03/09 15:37, 2F
文章代碼(AID): #1DTQqncx (AndroidDev)
討論串 (同標題文章)
文章代碼(AID): #1DTQqncx (AndroidDev)