《Android面試寶典》學習筆記(第三章:組件)

來源:互聯網
上載者:User

標籤:android

Android支援哪些方式顯示富文本資訊?

1,利用富文字標籤,類似於html標籤,如<b>,<font>,<img>等,不過不能直接作為textview.settext的參數值,而應該靜html.fromhtml開發方法 將這些文本轉換為charsequence對象。如果想要顯示圖片的時候,還需要實現imagegetter介面

2,重寫ondraw開發方法

3,利用webview組件顯示html頁面

4,textview中顯示圖片還可以使用imagespan對象,該對象用來封裝bitmap對象,並通過spannablestring對象封裝imagespan對象,將其作為settext開發方法 的參數。


如何在TextView中實現超連結?

執行個體化一個ClickableSpan對象,並實現onClick方法。


如何為文字設定背景色?

使用BackgroundColorSpan。


selector的用法?

http://blog.csdn.net/shakespeare001/article/details/7788400/


如何調整映像的透明度?

先使用bitmap裝載映像,Paint.setAlpha設定透明度,再用ondraw方法,把bitmap和paint作為參數傳進去。


如何設定進度條顏色?

http://blog.csdn.net/catoop/article/details/39667841


如何?垂直進度條?

自行繪製。


BaseAdapter類有哪些抽象方法?

getItem、getItemId、getCount、getView(int position, View convertView, ViewGroup parent)


如何設定ListView的快速滑塊?

ListView。setFastScrollEnabled(true)


ViewGroup有哪些子類?

Layout、GridView、Gallery、ListView


如何使容器內的組件可以水平和垂直滑動?

使用ScrollView,並在其中嵌套HorizontalScrollView。


靜態引用和動態引用的區別?

靜態引用將組件連同主程式一起封裝在編譯後的目標檔案中;動態引用是指主程式和組件是分離的,組件可以單獨升級和卸載。


有哪些組件可以動態引用?

apk檔案、jar檔案、Javascript指令碼、四大應用程式組件。


自訂可視組件有哪幾種方法?

擴充現有組件;組合多種組件;直接從view繼承。


四大應用程式組件可以封裝在jar檔案中嗎?使用時要注意什嗎?

可以。使用前要先在主程式的manifest.xml中註冊。


Android是否可以動態引用jar檔案?

傳統的jar檔案是基於JVM格式的,無法由Android應用程式動態調用。但jar檔案中只要包含Dalvik虛擬機器格式的二進位代碼就可以被Android動態調用。


如何判斷包含某個Activity action的Android應用程式是否安裝?
調用PackageManager.queryIntentActivities方法。


在Android中Java與Javascript如何互動?

使用WebView組件,並調用WebView.addJavaScriptInterface方法添加可以在Javascript中調用的Java方法。


NDK方法的命名規則?

假設NDK方法的Java類是mobile.android.HelloWorldJNI,在該類中實際訪問的本地方法名是process,傳回值類型是String,沒有參數,則NDK方法定義如下:

jstring Java_mobile_android_HelloWorldJNI_process(JNIEnv *env, jobject obj)

其中JNIEnv*是NDK環境的對象指標,jobject表示調用當前NDK方法的Java對象。


如何讓Android Market顯示指定的程式以方便使用者下載?

Uri uri = Uei.parse("market://search?q=應用程式名稱");

Intent intent = new Intent(Intent.ACTION_VIEW, uri);

startActivity(intent);


安裝apk程式的代碼?

String str = "/CanavaCancel.apk";

String fileName = Environment.getExternalStorageDirectory() + str;

Intent intent = new Intent(Intent.ACTION_VIEW);

 intent.setDataAndType(Uri.fromFile(new File(fileName)), "application/vnd.android.package-archive");

startActivity(intent);


Activity的生命週期?

650) this.width=650;" src="http://p.blog.csdn.net/images/p_blog_csdn_net/hpoi/EntryImages/20091003/347621596238419942633901667161718750.jpg" alt="347621596238419942633901667161718750.jpg" />


調用activity有哪幾種方法?

顯式調用:

Intent intent = new intent(this, MyActivity.class);

startActivity(intent);

隱式調用:

Intent intent = new intent("mobile.android.MYACTION");

startActivity(intent);


Activity之間如何傳遞資料?
可以通過Intent對象、靜態變數、剪下板和全域對象(繼承自android.app.Application的類)傳遞資訊。


常用Intent有哪些?

http://blog.csdn.net/zlqqhs/article/details/8600690


如何將Activity變為半透明的對話方塊?

http://blog.sina.com.cn/s/blog_5033827f0100xo9s.html


如何在activity顯示和關閉時設定動畫?

先在res/anim目錄中添加動畫,再用overridePendingTransition方法設定動畫效果。


如何接收廣播?

先編寫一個廣播接收器類,繼承Broadcast類,實現OnReceive方法,再在AndroidManifest中註冊。

如果它接受多個廣播,則使用intent.getAction方法判斷當前接收到的是哪一個廣播。


如何擷取簡訊內容?

實現一個ShortMessageReceiver,再在AndroidManifest中添加簡訊廣播action即可。


如何攔截來電?

http://blog.csdn.net/wangfayinn/article/details/8004023


如何攔截手機螢幕休眠和喚醒動作?

實現一個ScreenOnOffReceiver,再在註冊時添加Intent.ACTION_SCREEN_ON和Intent_SCREEN_OFF.


如何讓一個Activity在開機後自動顯示?

實現StartUpListener,並在manifest檔案中添加intent.action.BOOT_COMPLETED.


如何發送廣播?

sendBroadcast(intent);


Service的生命週期?

http://www.cnblogs.com/charley_yang/archive/2011/01/09/1931043.html


開發AIDL服務的步驟?







《Android面試寶典》學習筆記(第三章:組件)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.