old iOS compatibility fixes:

- strong settingButton reference
- hidden stackView heightContraint
- navBarAppearance
This commit is contained in:
TrueZhuangjia
2025-06-15 23:01:22 +08:00
committed by TrueZhuanjia
parent fb32ef3629
commit 1737eae39b
9 changed files with 454 additions and 383 deletions
+11
View File
@@ -309,12 +309,23 @@
[self updateViewForFoldState];
}
- (SettingsMenuMode)getSettingsMenuMode {
if ([self.delegate respondsToSelector:@selector(getSettingsMenuMode)]) {
return [self.delegate getSettingsMenuMode];
} else return AllSettings;
}
- (void)updateViewForFoldState {
if([self getSettingsMenuMode] != AllSettings) return;
[self setNeedsLayout];
[self layoutIfNeeded];
[self setupConstraints];
if (_expanded) {
_rootStackView.hidden = NO;
_separatorLine.hidden = NO;
CGSize fittingSize = [self.rootStackView systemLayoutSizeFittingSize:UILayoutFittingCompressedSize];
//CGSize fittingSize = [self.rootStackView systemLayoutSizeFittingSize:UILayoutFittingExpandedSize];
CGFloat rootStackViewHeight = fittingSize.height;
fittingSize = [self.headerView systemLayoutSizeFittingSize:UILayoutFittingCompressedSize];
CGFloat headerHeight = fittingSize.height;