Settings源码分析 4.2
1. 拿到一份代码,首先是找到它的入口,一步一步往里看
Settings/AndroidManifest.xml
2. 知道主类是Settings
src/com/android/settings/Settings.java
一个Activity根据以往经验,会在onCreate里声明使用的layout文件,如果主layout文件含有fragment, \
则具体的layout应该在实现Fragment类中的onCreateView方法里,不幸的是在Settings里都没有找到,那就是它有自己的机制了,看它的父类吧
3. PreferenceActivity是framework提供的类,去查api吧
1). 概述
这是一个展示preferences结构的类,这个功能经常包含PreferenceFragment这个类。这个类能展示一个或者多个pref
1. 拿到一份代码,首先是找到它的入口,一步一步往里看
Settings/AndroidManifest.xml
<activity android:name="Settings"
android:label="@string/settings_label_launcher"
android:taskAffinity="com.android.settings"
android:configChanges="keyboardHidden|screenSize|mcc|mnc"
android:launchMode="singleTask">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.LAUNCHER" />
<action android:name="android.settings.SETTINGS" />
</intent-filter>
</activity>
2. 知道主类是Settings
src/com/android/settings/Settings.java
一个Activity根据以往经验,会在onCreate里声明使用的layout文件,如果主layout文件含有fragment, \
则具体的layout应该在实现Fragment类中的onCreateView方法里,不幸的是在Settings里都没有找到,那就是它有自己的机制了,看它的父类吧
public class Settings extends PreferenceActivity
implements ButtonBarHandler, OnAccountsUpdateListener {
...
}
3. PreferenceActivity是framework提供的类,去查api吧
1). 概述
这是一个展示preferences结构的类,这个功能经常包含PreferenceFragment这个类。这个类能展示一个或者多个pref