編輯:關於android開發
Activity作為Android的第一步接觸的概念,在學習中將初步的認識總結下來,以便後續的回顧與反思。
1、在用Android Studio生成第一個helloworld應用程序運行在手機上時,發現繼承自Activity的MainActivity生成的界面上,默認的Label是不可見的,即使在AndroidManifest文件中定義android:Label="This is FirstActivity"也無濟於事。後來才發現應該是繼承Activity的原因,將其改為extends AppCompatActivity即可。
2、注意XML文件中@+id/與@String這樣的區別,+號表示要構建唯一的標識符,而沒有+號則意味著是引用之意。
3、Intent:作為Activity中用來傳遞活動、信息的傳遞者,它有多個構造函數,並存在兩種方式:顯式Intent和隱式Intent:
顯式Intent:
1 public void onClick(View view) { //點擊按鈕就會執行onClick方法 2 Intent intent = new Intent(FirstActivity.this,SecondActivity.class); 3 startActivity(intent);
Intent的兩個參數用來指示出發的Activity和將要啟動的Activity,並且利用startActivity的方法,將intent傳入該方法,就可以進行Activity之間的切換。
隱式Intent:
隱式Intent的主要部分並非在class文件中,而在於Androidmanifest的Activity注冊中:
<activity android:name=".ThirdActivity"> <intent-filter> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.DEFAULT"/> <data android:scheme="http"/> </intent-filter> </activity>
注意到intent-filter中的兩個參數:action和category(action只能有一個,而category則可以有多個),這些相當於ThirdActivity的一個內在特征,在代碼中使用隱式intent時,就需要進行“匹配”,才會得到正確的運行方式:
public void onClick(View view) { Intent intent = new Intent("android.intent.action.VIEW"); intent.addCategory("android.intent.category.DEFAULT"); startActivity(intent);
Intent的這個構造方法將action作為參數,category若是default則可以不用寫出,這樣兩者的特征得到“匹配”,就可以得到與顯式intent相同的Activity切換效果。注意:若category采用自定義的方式在manifest文件中注冊,那麼在Intent方法中需要使用如下addCategory方法進行說明:
intent.addCategory("android.intent.category.MY_DEFAULT");
這樣才能使得manifest文件與intent傳遞信息“匹配”成功,才能正確的啟動目標Activity。
Android群英傳筆記系列三 view的自定義:實現一個模擬下載,android群英1.實現效果:動態顯示進度(分別顯示了整個的動態改變的過程,然後完成後,彈出一個
Android定位&地圖&導航——基於百度地圖實現的定位功能,android定位城市 一、問題描述 LBS位置服務是android應用中重要的功
mitmproxy——中間人攻擊的神器 一、前言 http proxy在web滲透上占據著非常重要的地位,這方面的工具也非常多,像burp suite, Fiddler
Android之自定義控件-城市選擇,android控件實現效果: 圖片素材: