Skip to content

Releases: Tencent/QMUI_iOS

1.6.1

15 May 08:26
Compare
Choose a tag to compare

将 target 标记为 Shared。

1.6.0

11 May 11:54
Compare
Choose a tag to compare

关键更新

这个版本里我们重新考虑了 QMUI 的接入方式,以及全局样式配置表 QMUIConfigurationTemplate 的定位,并做出较大改动,具体如下:

  1. 更新 《开始使用》 文档,去掉“如何初始化”部分的内容,将其作为可选操作放到“如何使用配置表”。
  2. QMUIConfigurationTemplate 成为可选项(以前是必须),并且使用者可按需制作多份不同风格的配置表,以实现多种样式之间的切换,具体可参考最新版的 QMUI Demo Configuration
  3. QMUIConfiguration 重命名为 QMUIConfigurationMacros;把 QMUIConfigurationManager 重命名为 QMUIConfiguration
  4. QMUIConfiguration 的默认值尽量以 iOS 系统默认样式为准,因为我们希望在业务项目接入了 QMUI 后,QMUI 并不会过多地修改业务项目的已有样式。

如何适配新版

使用者若从旧版更新到 1.6.0,需要做以下几步适配工作(直接使用新版的请略过这段):

  1. 修改 application: didFinishLaunchingWithOptions: 方法,移除原有的 [QMUIConfigurationManager renderGlobalAppearances]
  2. 修改已复制到业务项目里的 QMUIConfigurationTemplate.m 文件,移除其中编译报错的代码,建议可重新从 qmui/QMUIConfigurationTemplate/ 目录下拷贝最新模板,再将原有模板里的值迁移到新模板内,以方便跟进后续的 QMUI 版本更新。

其他

除此之外,本次 QMUI 版本更新内容还包括:

  1. 修复 QMUITextView 文字发生变化时光标位置滚动不准确的 bug。
  2. UITextView (QMUI) 增加 qmui_convertNSRangeFromUITextRange 用于将 UITextPosition 转化为 NSRange
  3. UITextView (QMUI) 增加 qmui_scrollCaretVisibleAnimated: 用于将光标滚动到可视区域并且考虑 textContainerInset
  4. 整理几个 QMUI 控件的 initWithCoder: 方法,在里面不要设置能在 IB 里修改的属性,不然会覆盖 IB 的值。
  5. 修复在 storyboard 里使用 QMUICommonViewController 并为其设置 title 后,无法显示 title。
  6. 统一 QMUI 所有 enum 的定义方式,兼容 Swift 下的使用。
  7. UIImage (QMUI) 增加 qmui_imageWithBlendColor: 方法用户修改图片颜色。
  8. 相册控件修复保存资源后在此期间可能其他 App 也保存了资源,则 QMUI 在获取刚刚保存的资源时结果不准确。

1.5.2

03 May 08:55
Compare
Choose a tag to compare

优化 QMUI 里与配置表相关的代码组织形式,将 QMUIConfigurationManager 重命名为 QMUIConfiguration,并去掉手动调用 [QMUIConfigurationManager renderGlobalAppearance] 的要求。

注意事项
由于本次更新涉及类和接口重命名,所以更新后需要做如下修改才能编译通过:

  1. 去掉业务项目里的 QMUIConfigurationTemplate.m 文件开头对 [QMUICMI initDefaultConfiguration] 的调用。
  2. 去掉业务项目 AppDelegate.m 文件内 application:didFinishLaunchingWithOptions: 方法里对 [QMUIConfigurationManager renderGlobalAppearances] 的调用,新版本会自动调用。

1.5.1

27 Apr 09:07
Compare
Choose a tag to compare
  1. CALayer (QMUI) 增加两个方便生成分隔线 layer 的方法。
  2. QMUIButton 增加 spacingBetweenImageAndTitle 接口用于调整图片和文字之间的间距。
  3. 新增 UIView (QMUI_Snapshotting) 用于截图。
  4. 修复 QMUITextView 输入时文字抖动或者滚动位置错误的 bug。
  5. 修复其他 bug,提高稳定性。

1.5.0

06 Apr 09:13
Compare
Choose a tag to compare
  1. 【重要】重新整理 QMUI iOS 的使用方式,具体请查看开始使用文档。
  2. 增加键盘管理组件 QMUIKeyboardManager,提供更便捷的方式管理键盘事件,包括第三方键盘、iPad 浮动键盘以及 iPad Pro 的外接键盘等场景。
  3. 修复 QMUITextView 在设置了 placeholder 后再更新 textView.font/textColor/textAlignment,placeholder 的样式没有跟着更新。
  4. 修复 QMUICommonTableViewController setShouldShowSearchBar: 里成员变量赋值太晚导致执行过程中调用 getter 得到的值是错误的。

1.4.0

31 Mar 12:37
Compare
Choose a tag to compare

重新调整配置表 QMUIConfigurationTemplate 的组织形式,以解决 CocoaPod 下无法使用配置表的问题( #97 )。

1.3.7

30 Mar 09:22
Compare
Choose a tag to compare
  1. 【重要】废弃 QMUITableViewDelegate shouldShowSearchBarInTableView: 方法,使用 QMUICommonTableViewController.shouldShowSearchBar 代替,原来的方法仍可使用,但会出 warning。
  2. QMUIConfigurationManager 的所有属性增加是否允许为 nil 的标志,并修复某些地方如果值为 nil 可能导致 crash,清理废弃的配置项。

1.3.6

28 Mar 10:55
Compare
Choose a tag to compare
  1. 【重要】废弃 QMUITextView.textAttributes 属性,请使用系统的 UITextView.typingAttributes 属性代替。
  2. UIView (QMUI) 增加接口 qmui_animateWithAnimated:duration:... 用于方便的在动画和飞动画的情况下执行同一段代码。
  3. NSObject (QMUI) 增加接口 qmui_enumrateInstanceMethodsOfClass:usingBlock: 用于遍历指定 class 的所有实例方法。
  4. QMUISearchController 支持“最近搜索”功能。
  5. 优化 UILabel qmui_textAttributessetAttributedText: 混用时的表现。
  6. 修复 QMUIPopupContainerView 在不同设备方向下布局错误的 bug。
  7. QMUIQQEmotionManager 补充新版的微信表情。

完整内容请查看变更列表

1.3.4

16 Mar 12:16
Compare
Choose a tag to compare
  1. 【重要】[QMUITextViewDelegate textView:contentHeightAfterTextChanged:] 方法重命名为 textView:newHeightAfterTextChanged:,并改为仅在高度发生变化时才调用。
  2. 【重要】废弃配置表 QMUIConfigurationTemplate.m 里的宏 NavBarTintColorHighlightedNavBarTintColorDisabled
  3. 【重要】废弃 QMUINavigationButtonTypeClose
  4. 修复 QMUINavigationButton 若干类方法里的 tintColor 不生效的问题。
  5. 修复 QMUIPopupContainerView 在 iOS 8 和 iOS 9 下对屏幕旋转的兼容问题。
  6. 修复 IS_IPHONE 的宏对模拟器错误判断的 bug。
  7. 增加 QMUINavigationController (UISubclassingHooks),开放 willShowViewController:didShowViewController: 两个方法用于子类重写。

完整内容请查看变更列表

1.3.3

13 Mar 12:11
Compare
Choose a tag to compare
  1. UILabel (QMUI) 增加属性 qmui_textAttributes 用于便捷地格式化文本样式。
  2. UIButton (QMUI) 增加方法 qmui_setTitleAttributes:forState: 用于便捷地格式化按钮的文本样式。
  3. 修复 QMUITextField 在 iOS 7 下死循环的 bug。
  4. 修复 QMUIPopupContainerViewaddSubview: 的方式显示在非全屏的 UIView 上时布局计算错误的 bug。
  5. 修复 UIView (QMUI_Border) 几个属性的默认值没有被正确设置的问题。

具体请查看变更列表