Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> android面試題之二

android面試題之二

編輯:關於Android編程

六、android 中的動畫有哪幾種,它們的特點和區別是什麼 ?   逐幀動畫和補間動畫。   逐幀動畫:是傳統的動畫播放方式,指定每一幀的內容和停留時間,然後順序地播放排列好的圖片,類似電影。   補間動畫:給出兩個關鍵幀(初和末)和變化時間、方式,通過一些算法對View的內容在規定的時間內完成一系列的圖形變換。主要包括四種效果:Alpha、Scale、Translate和Rotate。   所以,補間動畫常用來播放一些有規律的動畫,而逐幀動畫則不一定。       七、請介紹下 Android 中常用的五種布局   1.FrameLayout(幀布局)   特點:組件都是從左上角開始放置,後面的會覆蓋前面的組件,就像往牆角堆砌東西一樣。布局比較簡單,只能放一點比較簡單的東西。   2.LinearLayout(線性布局)   特點:最常用的布局。分為垂直布局和水平布局。當垂直布局時,每一行就只有一個元素,多個元素依次垂直往下排列;水平布局時,只有一行,每一個元素依次向右排列。   3.AbsoluteLayout(絕對布局)   特點:就是用X,Y坐標來指定組件的位置,這種布局適應性太差,很少使用。   4.RelativeLayout(相對布局)   特點:一種非常常用的布局。相對布局是一種以某一個元素為參照物,來確定其他組件位置的布局方式。包括以某一組件為參照物和以父容器為參照物兩種情況。   5.TableLayout(表格布局)   特點:類似Html裡面的Table。用TableRow來代表表格布局中的每一行,在裡面去定義每一行的元素內容和對齊方式。   這幾種布局都有自己的特點,在實際應用中,常常相互嵌套,結合使用,才能做出漂亮的界面。       八、如何啟用Service ,如何停用Service   啟動方式有兩種:startService(),bindService().它們都是Context的方法。   區別:使用startService()方法啟用服務,調用者與服務之間沒有關連, 即使調用者退出了,服務仍然運行。使用bindService()方法啟用服務,調用者與服務綁定在了一起,調用者一旦退出,服務也就終止.   停用:采用startService()方法啟動的服務,只能調用Context.stopService()方法結束服務。   采用bindService()方法啟動的服務,調用者和服務綁定在了一起。若調用者退出,系統會調用onUnbind()方法解除綁定,然後調用onDestroy()方法。當然,開發者也可以自己調用Context.unbindService()方法手動解除綁定。接著,系統也會調用服務的onUnbind()-->onDestroy()方法。       九、注冊廣播有幾種方式,這些方式有何優缺點?   注冊方式有兩種:一是在代碼中動態注冊:registerReceiver(receiver,filter);                   二是在AndroidManifest中配置。   區別: 1)第一種不是常駐型廣播,也就是說廣播跟隨程序的生命周期。 2)第二種是常駐型,也就是說當應用程序關閉後,如果有信息廣播來,程序也會被系統調用自動運行。   注:當需要通過廣播更新UI時,一般采用動態注冊的方式,啟動Activity時候注冊BroadcastReceiver,Activity不可見時候,取消注冊。   在AndroidManifest配置還有一個缺點:由於它一直處於活動狀態,cpu和電源資源耗費比較大。       十、什麼是ANR 如何避免它?   ANR:Application Not Responding。   產生原因:在Android中,活動管理器和窗口管理器這兩個系統服務負責監視應用程序的響應,當用戶的操作在5s內應用程序沒能做出反應,BroadcastReceiver在10秒內沒有執行完畢,就會出現應用程序無響應對話框,這就是ANR。   解決方式:Activity應該在它的關鍵生命周期方法裡盡可能少的去做創建操作、潛在的耗時操作(網絡或數據庫操作等),或者高耗時的計算操作(改變位圖尺寸等),而應該在子線程裡(或者異步方式)來完成。主線程應該為子線程提供一個Handler,以便子線程完成時能夠提交給主線程。 
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved