作者Nienchin (ㄚ年)
看板AndroidDev
標題[問題] 如何離開程式
時間Wed Apr 18 01:36:56 2012
http://harvey-android.blogspot.com/2011/04/android-fingerpaint.html
上面網址是FingerPaint 繪圖的範例
在程式裡面,利用setContentView(mView);
進入程式執行畫面,
那我想請問,如何離開執行畫面,
回到一開始設計的XML介面!?
我想到的是利用setContentView(R.layout.main);
回到自己設計的介面,但是好像會有問題,
造成後續的動作無法執行
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.168.237.121
1F:推 LaPass:後續動作無法執行是什麼意思? 是指元件上的按鈕沒辦法顯示 04/18 10:52
2F:→ LaPass:按下去沒動作之類的嗎? 04/18 10:52
3F:→ LaPass:如果是.... 請在setContentView後重新把點擊事件、動態顯示 04/18 10:53
4F:→ LaPass:的文字重新設置一次 04/18 10:53
5F:→ Nienchin:按下去會沒動作!!~如何重新設置~不懂意思!!謝謝你 04/18 11:19
6F:→ LaPass:重新 xxx.setOnClickListener(.....); 04/18 11:31
7F:→ LaPass:問一下,你貼出來的程式碼是完整的嗎? 04/18 11:33
9F:→ Nienchin:因為我還是不懂怎用XDD可能要請LaPass教學一下~謝謝 04/18 11:43
10F:推 LaPass:簡單來講setContentView(...) 等於替程式換個面板。 04/18 11:47
11F:→ LaPass:使用findViewById()時,是從面板中找出你所指定的按鈕之類 04/18 11:48
12F:→ LaPass:的東西做設定。要注意這個動作。 04/18 11:49
13F:→ LaPass:如果,再一次setContentView(...)的話,等於強制將面板設回 04/18 11:50
14F:→ LaPass:原先狀態,那如果你的TextView中的字是從別的地方抓過來的 04/18 11:50
15F:→ LaPass:,那字就會被還原成xml中的預設值。 04/18 11:51
16F:→ LaPass:所以.... 最好是在setContentView(...)之後,再次把 04/18 11:52
17F:→ LaPass: leave = (Button) findViewById(R.id.button02); 04/18 11:52
18F:→ LaPass:leave.setOnClickListener(new Button.OnClickListen (略 04/18 11:52
19F:→ LaPass:那些的給重新設定一下 04/18 11:53
20F:→ Nienchin:嗯嗯~我懂LaPass的意思了!!!原來是這樣,但重新設置是指 04/18 11:54
21F:→ Nienchin:把leave.setOnClickListener(new Button.OnClickListen 04/18 11:55
22F:→ Nienchin:重新寫在別的地方嘛??? 04/18 11:55
23F:推 LaPass:嗯 接在所有的setContentView(R.layout.main);之後,建議 04/18 11:56
24F:→ LaPass:把那整段包成一個Method,要換頁面時去呼叫就好 04/18 11:57
25F:→ Nienchin:喔喔~好~我來試試看!!小弟比較愚笨點 所以要花點時間, 04/18 11:58
26F:→ Nienchin:如果不懂可能還要請教LaPass,真的謝謝你的幫忙 04/18 11:59
27F:→ Nienchin:LaPass目前我試不成功,button的onClick好像無法在 04/18 15:46
28F:→ Nienchin:onCreate 之外執行,會當掉。 我想順便請問一下 ,有辦法 04/18 15:46
29F:→ Nienchin:直接關閉MyView這個class,回到 main 嘛? 04/18 15:47
30F:→ Nienchin:或者是直接關掉DrawBoard 開啟另一個Activity 04/18 16:05
31F:→ yauhh:分成二個Activity比較簡單 04/18 17:02
32F:→ Nienchin:我嘗試分了兩個Activity,但一樣會無反應,所以我去找了 04/18 17:45
33F:→ Nienchin:資料,叫"如何在Activity關閉view" 04/18 17:45
34F:→ Nienchin:但是 我看不太懂解釋,網站如下:(大陸論壇XD) 04/18 17:46
36F:→ Nienchin:不知道有沒有人有相關程式碼可以介紹。 04/18 17:47
38F:推 LaPass:當掉的話他會寫為什麼吧?logcat會顯示。 04/18 17:50
39F:→ LaPass:setOnClickListener一定可以在onCreate 之外執行.... 04/18 17:53
40F:→ LaPass:還有,用setContentView之後,已經不是關閉部關閉的問題了 04/18 17:54
41F:→ LaPass:,因為你已經把整個程式的面板給換掉了 04/18 17:54
42F:→ Nienchin:哇哇哇哇哇,LaPass 大大解決我的問題了~你太強了!!!!!! 04/18 18:21
43F:→ Nienchin:我現在超興奮,非常無敵感謝你,但愚蠢的我,因為把 04/18 18:22
44F:→ Nienchin:setOnClickListener 東西寫錯了,所以才一直當掉,所以, 04/18 18:23
45F:→ Nienchin:才認為沒辦法在 onCreate之外執行!!!!!!!天壓~~謝謝 04/18 18:23
46F:→ yauhh:這反應太激烈 04/18 18:24
47F:→ Nienchin:XDDD一定要的啦,解決一個問題會很開心耶 04/18 18:38
48F:→ Nienchin:孔子都說了: 朝聞道,夕死可矣!!!!所以 我可以死了!?XDDD 04/18 18:38
49F:→ yauhh:(掏槍) 04/18 19:28
50F:推 LaPass:恭喜妳把問題給解決了~ 04/18 19:34