1. frameworks/base/core/java/android/content/res/Configuration.java
这个文件的setToDefaults方法中设置fontScale,网上很多博主说改这个地方,但亲测无法实现字体大小的修改。
public void setToDefaults() {
- fontScale = 1;
+ fontScale = 1.3f;
2. frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
这个文件是关键位置,private void loadSystemSettings(SQLiteDatabase db)中添加loadSetting(stmt, Settings.System.FONT_SCALE, 1.3f);
frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/SettingsHelper.java
这个文件也需要修改一下。
public class SettingsHelper {
return !TextUtils.isEmpty(Settings.Secure.getString(
mContext.getContentResolver(), name));
case Settings.System.FONT_SCALE:
- return Settings.System.getFloat(mContext.getContentResolver(), name, 1.0f) != 1.0f;
+ return Settings.System.getFloat(mContext.getContentResolver(), name, 1.15f) != 1.3f;
default:
return false;
}
3. packages/apps/Settings/res/values/arrays.xml
这个文件是设置—>显示—>字体大小中几个档位的数据,根据自己需要设置,一般默认值设置在第二个。
<string-array name="entryvalues_font_size" translatable="false">
<item>0.85</item>
<item>1.0</item>
<item>1.15</item>
<item>1.30</item>
</string-array>
4. packages/apps/Settings/src/com/android/settings/display/FontSizePreferenceController.java
这里可以修改一下,具体影响那些方面,没有深究。
public class FontSizePreferenceController extends BasePreferenceController {
@Override
public CharSequence getSummary() {
final float currentScale = Settings.System.getFloat(mContext.getContentResolver(),
- Settings.System.FONT_SCALE, 1.0f);
+ Settings.System.FONT_SCALE, 1.3f);
final Resources res = mContext.getResources();
final String[] entries = res.getStringArray(R.array.entries_font_size);
final String[] strEntryValues = res.getStringArray(R.array.entryvalues_font_size);