我不會 Java, 當然也不懂如何 用 ADT 開發 Android App.
但是我看過幾天 Xamarin 啊,C# 我還是會的。。
用 Xamarin 做Android , 隻要對着 java 源碼, 我還是能翻譯一份出來的。
我第一時間安裝了 VS2015 , 挺好的,自帶的 Android 模拟器, 比那個第三方的 Genymotion 模拟器快很多!
不過 Xamarin 依然是收費的, 但是在鎮上,大家都知道,哈哈。
先上個圖給大家看看我翻譯的結果:
照例,源碼:
https://github.com/gruan01/Xamarin-Example/tree/master/FloatBall
Xamarin 聲明一個 Service 要這樣寫:
後面那兩個接口不是必須的。
IntentFilter 也不是必須的。
運作這個 Service ,要在 MainActivity 裡這樣寫:
在 Service 裡, 如果想擷取到 WindowManager 要這樣寫:
注意,不是簡單的強制類型轉換, 一定要用 JavaCast
給 WindowManager 添加一個子視圖
這個真是有點造蛋啊。一開始沒有設定 LayoutParameter 的 Type
一直報這個錯:
android.view.WindowManager$BadTokenException: Unable to add window — token null is not for an application
搜了好多網頁,說的基本上都一樣, 隻是不适用我這個場景。
後來仔細看了一下園友的文章,發現少了 param.Type 這個參數。。。,加上就OK了!
我能說這是個奇葩嗎?
FrameLayout & Animation
不明白為什麼Animation 應到 FrameLayout 上,為什麼一點作用都不起。
應用到 ImageView 上效果立馬就出來了。
不知道是我寫法不對,還是錯覺。
最後請教一下:
如圖所示,我對 FrameLayout 做了 ShapeDrawable。
其實我是想顯示出來一個圓型的圖檔出來。。
請問該如何實作?
謝謝圍觀。