2010年9月11日 星期六

Android - onTouchEvent 、 onClickEvent 、 onLongClickEvent 初步認識

昨天花了將近一天搞了touch event 和 Long touch event。
來做一下筆記吧。(內容有問題,歡迎指正哦^^)

官方文件提到與UI的事件通知,有以下二種方式:

1.定義event Listener並註冊Listener.(Define an event listener and register it with the View.)

Listener的名稱規則 - OnListener
註冊 - setOnClickListener().

2. 覆寫View原有的callback 方法 (Override an existing callback method for the View.)

例:onTouchEvent() 、onTrackballEvent() 、onKeyDown()

onTouchEvent()

大致上就是View家族Activity家族,會擁有onTouchEvent。


而比較重要的是當我們所認知的「一次觸碰」,其實發生了ACTION_DOWN與ACTION_UP。

這麼多類別都有擁有onTouchEvent,會引起的議題即是優先順序。

我們先建立一個Activity 並放置一個LinearLayout。LinearLayout中放置一個TextView。並分別添加onTouchEvent,可參考下圖:





可能還是搞不懂我要做什麼,我們作一個測試,當觸碰TextView時TouchEvent的處理順序為何。

測試結果是TextView → LinearLayout→Activity 。

但實際上的Log是四筆:

TextView_onTouch
LinearLayout_onTouch
Activity_onTouch 
Activity_onTouch 

為什麼Activity_onTouch會被觸發二次?因為「ACTION_DOWN」一次,「ACTION_UP」再一次。

為什麼 ACTION_UP不會觸發TextView與LinearLayout的Touch event?因為在「ACTION_DOWN」時,TextView與LinearLayout都 return false ,故事件不會再傳入。

重要的來了!MotionEvent 一但回傳true後,同一個event都會交由該 function(指回傳true的function)處理,不會再向上呼叫。

同理,如果將TouchEvent稍作修改。TextView - onTouch() 回傳true,結果將會變更為:

TextView_onTouch_ACTION_DOWN
TextView_onTouch_ACTION_UP

後面寫的有亂…有空再來修修…抱歉囉!

2010年8月10日 星期二

Eclipse作的事! tomcat 也要作!

從上班到現在,有好幾次遇到這個問題了…



當我用Eclipse建立一個專案,用Eclipse裡的server startup,一切都正常佈屬與執行!



但一旦我將專案移到tomcat webapp資料夾下,用tomcat/bin/startup.bat



一切卻都不能用…一直都是404!!!





昨天請教了高手!



原來…我們用eclipse啟動的時候,IDE 幫我們作了很多事!



在tomcat/conf/server.xml裡補上:










OK, 終於找的到網頁了!但我要運行servlet的時候…卻又出現404



原來…java在預設的classes要放在WEB-INF/classes



一切大災難才就此解決!!

2010年6月16日 星期三

「學習力」是「知道」然而「做到」

聽了常姐的廣播,聊到學習力。

原來我也認知錯了。

過去大家都會誤以為就是「知道」

卻忘了「做到」的重要!

2010年6月10日 星期四

小故事分享

分享一個小故事,

有二隻白貓,一起在屋頂上玩耍,一不小心,

兩隻貓一起從煙囪上掉下來,一隻弄髒了自己,染黑了!

另一隻則還是白白淨淨的,兩隻貓互望了一下。

思考一下,最後哪隻貓會趕快去洗澡呢?

2010年6月9日 星期三

認識Print-on-demand

從這篇文章首段最後一段話看到的!
Turn the Page: What's Next for Publishing?

Print On Demand (wiki)
中文有人翻意:按需印刷、隨選列印
相對的名詞有:BOD (Books on Demand)

我的心得,看看就好:
簡單說就是一種新的出版模式。讀者與廣告商因為科技的演變,習慣都變的不一樣,出版商也轉型為POD模式營運。

2010年1月25日 星期一

Opera browser 內建發音功能

使用Opera的日子不多,就發現它有很多我喜歡的功能!!

1.內建發音 (對我這個英語音痴來說,很有用!)

使用方法:反白要發音的字,右鍵>發音。
註:首次使用,需下載一些檔案。別擔心!很簡單,Opera只要你點選確定就會自動完成!
設定男/女生發音:工具>功能設定>進階>聲控>詳細資料>…這裡有很多設定囉!

2.研發工具

開啟方式:工具>進階>研發工具
這對程式設計師跟網頁設計師應該都有幫助,詳細表示DOM、request紀錄。(我只列我知道的,應該還很多)