Skip to content

Commit

Permalink
4.0.0
Browse files Browse the repository at this point in the history
  • Loading branch information
MoLice committed Jul 20, 2019
1 parent 3fddba6 commit 503e4e4
Show file tree
Hide file tree
Showing 76 changed files with 2,762 additions and 699 deletions.
23 changes: 20 additions & 3 deletions QMUIConfigurationTemplate/QMUIConfigurationTemplate.m
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,12 @@ - (void)applyConfigurationTemplate {
#pragma mark - TextField & TextView
QMUICMI.textFieldTintColor = nil; // TextFieldTintColor : QMUITextField、QMUITextView 的 tintColor,不影响 UIKit 的输入框
QMUICMI.textFieldTextInsets = UIEdgeInsetsMake(0, 7, 0, 7); // TextFieldTextInsets : QMUITextField 的内边距,不影响 UITextField
QMUICMI.keyboardAppearance = UIKeyboardAppearanceDefault; // KeyboardAppearance : UITextView、UITextField、UISearchBar 的 keyboardAppearance

#pragma mark - UISwitch
QMUICMI.switchOnTintColor = nil; // SwitchOnTintColor : UISwitch 打开时的背景色(除了圆点外的其他颜色)
QMUICMI.switchTintColor = nil; // SwitchTintColor : UISwitch 关闭时的周围边框颜色
QMUICMI.switchThumbTintColor = nil; // SwitchThumbTintColor : UISwitch 中间的操控圆点的颜色

#pragma mark - NavigationBar

Expand All @@ -87,6 +93,7 @@ - (void)applyConfigurationTemplate {
QMUICMI.navBarBackgroundImage = nil; // NavBarBackgroundImage : UINavigationBar 的背景图
QMUICMI.navBarShadowImage = nil; // NavBarShadowImage : UINavigationBar.shadowImage,也即导航栏底部那条分隔线
QMUICMI.navBarBarTintColor = nil; // NavBarBarTintColor : UINavigationBar.barTintColor,也即背景色
QMUICMI.navBarStyle = UIBarStyleDefault; // NavBarStyle : UINavigationBar 的 barStyle
QMUICMI.navBarTintColor = nil; // NavBarTintColor : QMUINavigationController.navigationBar 的 tintColor,也即导航栏上面的按钮颜色,由于 tintColor 不支持 appearance,所以这里只支持 QMUINavigationController
QMUICMI.navBarTitleColor = nil; // NavBarTitleColor : UINavigationBar 的标题颜色,以及 QMUINavigationTitleView 的默认文字颜色
QMUICMI.navBarTitleFont = nil; // NavBarTitleFont : UINavigationBar 的标题字体,以及 QMUINavigationTitleView 的默认字体
Expand All @@ -107,6 +114,7 @@ - (void)applyConfigurationTemplate {
QMUICMI.tabBarBackgroundImage = nil; // TabBarBackgroundImage : UITabBar 的背景图
QMUICMI.tabBarBarTintColor = nil; // TabBarBarTintColor : UITabBar 的 barTintColor
QMUICMI.tabBarShadowImageColor = nil; // TabBarShadowImageColor : UITabBar 的 shadowImage 的颜色,会自动创建一张 1px 高的图片
QMUICMI.tabBarStyle = UIBarStyleDefault; // TabBarStyle : UITabBar 的 barStyle
QMUICMI.tabBarTintColor = nil; // TabBarTintColor : UITabBar 的 tintColor
QMUICMI.tabBarItemTitleColor = nil; // TabBarItemTitleColor : 未选中的 UITabBarItem 的标题颜色
QMUICMI.tabBarItemTitleColorSelected = TabBarTintColor; // TabBarItemTitleColorSelected : 选中的 UITabBarItem 的标题颜色
Expand All @@ -122,6 +130,7 @@ - (void)applyConfigurationTemplate {
QMUICMI.toolBarBackgroundImage = nil; // ToolBarBackgroundImage : UIToolbar 的背景图
QMUICMI.toolBarBarTintColor = nil; // ToolBarBarTintColor : UIToolbar 的 tintColor
QMUICMI.toolBarShadowImageColor = nil; // ToolBarShadowImageColor : UIToolbar 的 shadowImage 的颜色,会自动创建一张 1px 高的图片
QMUICMI.toolBarStyle = UIBarStyleDefault; // ToolBarStyle : UIToolbar 的 barStyle
QMUICMI.toolBarButtonFont = nil; // ToolBarButtonFont : QMUIToolbarButton 的字体

#pragma mark - SearchBar
Expand All @@ -143,7 +152,6 @@ - (void)applyConfigurationTemplate {
QMUICMI.tableViewEstimatedHeightEnabled = YES; // TableViewEstimatedHeightEnabled : 是否要开启全局 UITableView 的 estimatedRow(Section/Footer)Height

QMUICMI.tableViewBackgroundColor = nil; // TableViewBackgroundColor : Plain 类型的 QMUITableView 的背景色颜色
QMUICMI.tableViewGroupedBackgroundColor = nil; // TableViewGroupedBackgroundColor : Grouped 类型的 QMUITableView 的背景色
QMUICMI.tableSectionIndexColor = nil; // TableSectionIndexColor : 列表右边的字母索引条的文字颜色
QMUICMI.tableSectionIndexBackgroundColor = nil; // TableSectionIndexBackgroundColor : 列表右边的字母索引条的背景色
QMUICMI.tableSectionIndexTrackingBackgroundColor = nil; // TableSectionIndexTrackingBackgroundColor : 列表右边的字母索引条在选中时的背景色
Expand All @@ -152,7 +160,7 @@ - (void)applyConfigurationTemplate {
QMUICMI.tableViewCellNormalHeight = UITableViewAutomaticDimension; // TableViewCellNormalHeight : QMUITableView 的默认 cell 高度
QMUICMI.tableViewCellTitleLabelColor = nil; // TableViewCellTitleLabelColor : QMUITableViewCell 的 textLabel 的文字颜色
QMUICMI.tableViewCellDetailLabelColor = nil; // TableViewCellDetailLabelColor : QMUITableViewCell 的 detailTextLabel 的文字颜色
QMUICMI.tableViewCellBackgroundColor = UIColorWhite; // TableViewCellBackgroundColor : QMUITableViewCell 的背景色
QMUICMI.tableViewCellBackgroundColor = nil; // TableViewCellBackgroundColor : QMUITableViewCell 的背景色
QMUICMI.tableViewCellSelectedBackgroundColor = UIColorMake(238, 239, 241); // TableViewCellSelectedBackgroundColor : QMUITableViewCell 点击时的背景色
QMUICMI.tableViewCellWarningBackgroundColor = UIColorYellow; // TableViewCellWarningBackgroundColor : QMUITableViewCell 用于表示警告时的背景色,备用
QMUICMI.tableViewCellDisclosureIndicatorImage = nil; // TableViewCellDisclosureIndicatorImage : QMUITableViewCell 当 accessoryType 为 UITableViewCellAccessoryDisclosureIndicator 时的箭头的图片
Expand All @@ -171,6 +179,12 @@ - (void)applyConfigurationTemplate {
QMUICMI.tableViewSectionHeaderContentInset = UIEdgeInsetsMake(4, 15, 4, 15); // TableViewSectionHeaderContentInset : Plain 类型的 QMUITableView sectionHeader 里的内容的 padding
QMUICMI.tableViewSectionFooterContentInset = UIEdgeInsetsMake(4, 15, 4, 15); // TableViewSectionFooterContentInset : Plain 类型的 QMUITableView sectionFooter 里的内容的 padding

QMUICMI.tableViewGroupedBackgroundColor = nil; // TableViewGroupedBackgroundColor : Grouped 类型的 QMUITableView 的背景色
QMUICMI.tableViewGroupedCellTitleLabelColor = TableViewCellTitleLabelColor; // TableViewGroupedCellTitleLabelColor : Grouped 类型的 QMUITableView cell 里的标题颜色
QMUICMI.tableViewGroupedCellDetailLabelColor = TableViewCellDetailLabelColor; // TableViewGroupedCellDetailLabelColor : Grouped 类型的 QMUITableView cell 里的副标题颜色
QMUICMI.tableViewGroupedCellBackgroundColor = TableViewCellBackgroundColor; // TableViewGroupedCellBackgroundColor : Grouped 类型的 QMUITableView cell 背景色
QMUICMI.tableViewGroupedCellSelectedBackgroundColor = TableViewCellSelectedBackgroundColor; // TableViewGroupedCellSelectedBackgroundColor : Grouped 类型的 QMUITableView cell 点击时的背景色
QMUICMI.tableViewGroupedCellWarningBackgroundColor = TableViewCellWarningBackgroundColor; // tableViewGroupedCellWarningBackgroundColor : Grouped 类型的 QMUITableView cell 在提醒状态下的背景色
QMUICMI.tableViewGroupedSectionHeaderFont = UIFontMake(12); // TableViewGroupedSectionHeaderFont : Grouped 类型的 QMUITableView sectionHeader 里的文字字体
QMUICMI.tableViewGroupedSectionFooterFont = UIFontMake(12); // TableViewGroupedSectionFooterFont : Grouped 类型的 QMUITableView sectionFooter 里的文字字体
QMUICMI.tableViewGroupedSectionHeaderTextColor = UIColorGrayDarken; // TableViewGroupedSectionHeaderTextColor : Grouped 类型的 QMUITableView sectionHeader 里的文字颜色
Expand Down Expand Up @@ -219,7 +233,10 @@ - (void)applyConfigurationTemplate {
QMUICMI.shouldPrintQMUIWarnLogToConsole = IS_DEBUG; // ShouldPrintQMUIWarnLogToConsole : 是否在出现 QMUILogWarn 时自动把这些 log 以 QMUIConsole 的方式显示到设备屏幕上
QMUICMI.sendAnalyticsToQMUITeam = YES; // SendAnalyticsToQMUITeam : 是否允许在 DEBUG 模式下上报 Bundle Identifier 和 Display Name 给 QMUI 统计用
QMUICMI.dynamicPreferredValueForIPad = NO; // 当 iPad 处于 Slide Over 或 Split View 分屏模式下,宏 `PreferredValueForXXX` 是否把 iPad 视为某种屏幕宽度近似的 iPhone 来取值。
QMUICMI.ignoreKVCAccessProhibited = NO; // IgnoreKVCAccessProhibited : 是否全局忽略 iOS 13 对 KVC 访问 UIKit 私有属性的限制
if (@available(iOS 13.0, *)) {
QMUICMI.ignoreKVCAccessProhibited = NO; // IgnoreKVCAccessProhibited : 是否全局忽略 iOS 13 对 KVC 访问 UIKit 私有属性的限制
QMUICMI.adjustScrollIndicatorInsetsByContentInsetAdjustment = NO; // AdjustScrollIndicatorInsetsByContentInsetAdjustment : 当将 UIScrollView.contentInsetAdjustmentBehavior 设为 UIScrollViewContentInsetAdjustmentNever 时,是否自动将 UIScrollView.automaticallyAdjustsScrollIndicatorInsets 设为 NO,以保证原本在 iOS 12 下的代码不用修改就能在 iOS 13 下正常控制滚动条的位置。
}
}

// QMUI 2.3.0 版本里,配置表新增这个方法,返回 YES 表示在 App 启动时要自动应用这份配置表。仅当你的 App 里存在多份配置表时,才需要把除默认配置表之外的其他配置表的返回值改为 NO。
Expand Down
29 changes: 28 additions & 1 deletion QMUIKit.podspec
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Pod::Spec.new do |s|
s.name = "QMUIKit"
s.version = "3.2.1"
s.version = "4.0.0"
s.summary = "致力于提高项目 UI 开发效率的解决方案"
s.description = <<-DESC
QMUI iOS 是一个致力于提高项目 UI 开发效率的解决方案,其设计目的是用于辅助快速搭建一个具备基本设计还原效果的 iOS 项目,同时利用自身提供的丰富控件及兼容处理, 让开发者能专注于业务需求而无需耗费精力在基础代码的设计上。不管是新项目的创建,或是已有项目的维护,均可使开发效率和项目质量得到大幅度提升。
Expand Down Expand Up @@ -283,6 +283,29 @@ Pod::Spec.new do |s|
sss.dependency 'QMUIKit/QMUIComponents/QMUIMultipleDelegates'
end

ss.subspec 'QMUITheme' do |sss|
sss.source_files = 'QMUIKit/QMUIComponents/QMUITheme.{h,m}'
sss.dependency 'QMUIKit/QMUIComponents/QMUIImagePickerLibrary'
sss.dependency 'QMUIKit/QMUIComponents/QMUIAlertController'
sss.dependency 'QMUIKit/QMUIComponents/QMUIButton'
sss.dependency 'QMUIKit/QMUIComponents/QMUIFillButton'
sss.dependency 'QMUIKit/QMUIComponents/QMUIGhostButton'
sss.dependency 'QMUIKit/QMUIComponents/QMUILinkButton'
sss.dependency 'QMUIKit/QMUIComponents/QMUIConsole'
sss.dependency 'QMUIKit/QMUIComponents/QMUIEmotionView'
sss.dependency 'QMUIKit/QMUIComponents/QMUIEmptyView'
sss.dependency 'QMUIKit/QMUIComponents/QMUIGridView'
sss.dependency 'QMUIKit/QMUIComponents/QMUIImagePreviewView'
sss.dependency 'QMUIKit/QMUIComponents/QMUILabel'
sss.dependency 'QMUIKit/QMUIComponents/QMUIPopupContainerView'
sss.dependency 'QMUIKit/QMUIComponents/QMUIPopupMenuView'
sss.dependency 'QMUIKit/QMUIComponents/QMUISlider'
sss.dependency 'QMUIKit/QMUIComponents/QMUITextField'
sss.dependency 'QMUIKit/QMUIComponents/QMUITextView'
sss.dependency 'QMUIKit/QMUIComponents/QMUIVisualEffectView'
sss.dependency 'QMUIKit/QMUIComponents/QMUIToastView'
end

ss.subspec 'QMUITips' do |sss|
sss.source_files = 'QMUIKit/QMUIComponents/QMUITips.{h,m}'
sss.dependency 'QMUIKit/QMUIComponents/QMUIToastView'
Expand All @@ -293,6 +316,10 @@ Pod::Spec.new do |s|
sss.source_files = 'QMUIKit/QMUIComponents/QMUIVisualEffectView.{h,m}'
end

ss.subspec 'QMUIWindowSizeMonitor' do |sss|
sss.source_files = 'QMUIKit/QMUIComponents/QMUIWindowSizeMonitor.{h,m}'
end

ss.subspec 'QMUIZoomImageView' do |sss|
sss.source_files = 'QMUIKit/QMUIComponents/QMUIZoomImageView.{h,m}'
sss.dependency 'QMUIKit/QMUIComponents/QMUIEmptyView'
Expand Down
2 changes: 1 addition & 1 deletion QMUIKit/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
<string>3.2.1</string>
<string>4.0.0</string>
<key>CFBundleVersion</key>
<string>$(CURRENT_PROJECT_VERSION)</string>
<key>NSPrincipalClass</key>
Expand Down
8 changes: 4 additions & 4 deletions QMUIKit/QMUIComponents/QMUIAlertController.m
Original file line number Diff line number Diff line change
Expand Up @@ -923,10 +923,10 @@ - (void)showWithAnimated:(BOOL)animated {
weakSelf.maskView.alpha = 1;
weakSelf.willShow = NO;
weakSelf.showing = YES;
if (self.isNeedsHideAfterAlertShowed) {
[self hideWithAnimated:self.isAnimatedForHideAfterAlertShowed];
self.isNeedsHideAfterAlertShowed = NO;
self.isAnimatedForHideAfterAlertShowed = NO;
if (weakSelf.isNeedsHideAfterAlertShowed) {
[weakSelf hideWithAnimated:weakSelf.isAnimatedForHideAfterAlertShowed];
weakSelf.isNeedsHideAfterAlertShowed = NO;
weakSelf.isAnimatedForHideAfterAlertShowed = NO;
}
if ([weakSelf.delegate respondsToSelector:@selector(didShowAlertController:)]) {
[weakSelf.delegate didShowAlertController:weakSelf];
Expand Down
1 change: 0 additions & 1 deletion QMUIKit/QMUIComponents/QMUIButton/QMUIButton.h
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,6 @@ typedef NS_ENUM(NSUInteger, QMUIButtonImagePosition) {

/**
* 等价于 adjustsTitleTintColorAutomatically = YES & adjustsImageTintColorAutomatically = YES & tintColor = xxx
* @note 一般只使用这个属性的 setter,而 getter 永远返回 self.tintColor
* @warning 不支持传 nil
*/
@property(nonatomic, strong) IBInspectable UIColor *tintColorAdjustsTitleAndImage;
Expand Down
5 changes: 1 addition & 4 deletions QMUIKit/QMUIComponents/QMUIButton/QMUIButton.m
Original file line number Diff line number Diff line change
Expand Up @@ -560,15 +560,12 @@ - (void)tintColorDidChange {
}

- (void)setTintColorAdjustsTitleAndImage:(UIColor *)tintColorAdjustsTitleAndImage {
_tintColorAdjustsTitleAndImage = tintColorAdjustsTitleAndImage;
if (tintColorAdjustsTitleAndImage) {
self.tintColor = tintColorAdjustsTitleAndImage;
self.adjustsTitleTintColorAutomatically = YES;
self.adjustsImageTintColorAutomatically = YES;
}
}

- (UIColor *)tintColorAdjustsTitleAndImage {
return self.tintColor;
}

@end
Loading

0 comments on commit 503e4e4

Please sign in to comment.