标签:
BUG详细:比如4:3的时候是200W,切成全屏变400W,重新切回4:3为300W,退出相机后,重新进入又变成200W。
原因分析:这个版本的设计如此,当你点选屏幕比例的时候,程序设计是把这个比例值作为主属性,通过sharepreference(写文件操作,文件数据内容实际就是一个键值对)写文件,而分辨率作为副属性通过find()方法找到合适的值,但是此分辨率并未写进sharepreference,所以重新进入还是读原来的文件值。
修改方法:CommonRule.java
public void execute() {
mConditionSetting = mSettingGenerator.getSettingItem(mConditionKey);
mResultSetting = mSettingGenerator.getSettingItem(mResultKey);
String conditionSettingValue = mConditionSetting.getValue();
int index = conditionSatisfied(conditionSettingValue);
String resultValue = mResultSetting.getValue();
int type = mResultSetting.getType();
.......
.......
if (mResultSetting.isEnable()) {
setResultSettingValue(type, resultValue, overrideValue, true);
}
if (mConditionKey.equals(SettingConstants.KEY_PICTURE_RATIO)) {
//添加如下代码
ListPreference pref = null;
pref = mResultSetting.getListPreference();
SharedPreferences.Editor editor = pref.getSharedPreferences(SettingConstants.KEY_PICTURE_SIZE).edit();
editor.putString(SettingConstants.KEY_PICTURE_SIZE, resultValue);
editor.apply();
//添加如上代码
return;
}
Record record = mResultSetting.new Record(resultValue, overrideValue);
mResultSetting.addOverrideRecord(mConditionKey, record);
.....
}
关于android MTK相机L版本,切换屏幕比例后,分辨率随之改变,但重新进入相机后原有分辨率不再生效问题
标签:
原文地址:http://www.cnblogs.com/rainey-forrest/p/5135915.html