Skip to content

Commit d6bfad4

Browse files
author
Draveness
committed
Fixed images relative path
1 parent 163ab5b commit d6bfad4

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

IQKeyboardManager/『零行代码』解决键盘遮挡问题(iOS).md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,13 @@ pod 'IQKeyboardManager'
2424

2525
说是架构分析,其实只是对 [IQKeyboardManager](https://github.com/hackiftekhar/IQKeyboardManager) 中包含的类以及文件有一个粗略地了解,研究一下这个项目的层级是什么样的。
2626

27-
![IQKeyboardManager-Hierarchy](media/14658174011193/IQKeyboardManager-Hierarchy.png)
27+
![IQKeyboardManager-Hierarchy](images/IQKeyboardManager-Hierarchy.png)
2828

2929
整个项目中最核心的部分就是 `IQKeyboardManager` 这个类,它负责**管理键盘出现或者隐藏时视图移动的距离**,是整个框架中最核心的部分。
3030

3131
在这个框架中还有一些用于支持 IQKeyboardManager 的分类,以及显示在键盘上面的 IQToolBar:
3232

33-
![IQToolBa](media/14658174011193/IQToolBar.png)
33+
![IQToolBa](images/IQToolBar.png)
3434

3535
使用红色标记的部分就是 `IQToolBar`,左侧的按钮可以在不同的 `UITextField` 之间切换,中间的文字是 `UITextField.placeholderText`,右边的 `Done` 应该就不需要解释了。
3636

@@ -197,7 +197,7 @@ UITextFieldTextDidEndEditingNotification
197197

198198
然后运行工程,在 Demo 中点击一个 `UITextField`
199199

200-
![easiest-integration-demo](media/14658174011193/easiest-integration-demo.png)
200+
![easiest-integration-demo](images/easiest-integration-demo.png)
201201

202202
上面的操作会打印出如下所示的 Log:
203203

@@ -253,7 +253,7 @@ IQKeyboardManager: ****** keyboardWillShow: ended ******
253253
+ 指示当前 `UITextField` 的 placeholder
254254
+ Done Button
255255

256-
![IQToolBarIte](media/14658174011193/IQToolBarItem.png)
256+
![IQToolBarIte](images/IQToolBarItem.png)
257257

258258

259259
> 这些 item 都是 `IQBarButtonItem` 的子类
@@ -380,7 +380,7 @@ _topViewBeginRect = _rootViewController.view.frame;
380380

381381
通过点击 `IQToolBar` 上面的 done 按钮,键盘就会隐藏:
382382

383-
![IQKeyboardManager-hide-keyboard](media/14658174011193/IQKeyboardManager-hide-keyboard.png)
383+
![IQKeyboardManager-hide-keyboard](images/IQKeyboardManager-hide-keyboard.png)
384384

385385
键盘隐藏的过程中会依次调用下面的三个方法:
386386

@@ -433,13 +433,13 @@ _startingContentOffset = CGPointZero;
433433

434434
因为框架的功能是基于通知实现的,所以通知的时序至关重要,在 `IQKeyboardManagerConstants.h` 文件中详细地描述了在编辑 `UITextField` 的过程中,通知触发的先后顺序。
435435

436-
![notification-IQKeyboardManage](media/14658174011193/notification-IQKeyboardManager.png)
436+
![notification-IQKeyboardManage](images/notification-IQKeyboardManager.png)
437437

438438
> 上图准确说明了通知发出的时机,透明度为 50% 的部分表示该框架没有监听这个通知。
439439
440440
`UITextView` 的通知机制与 `UITextField` 略有不同:
441441

442-
![UITextView-Notification-IQKeyboardManage](media/14658174011193/UITextView-Notification-IQKeyboardManager.png)
442+
![UITextView-Notification-IQKeyboardManage](images/UITextView-Notification-IQKeyboardManager.png)
443443

444444
当 Begin Editing 这个事件发生时,`UITextView` 的通知机制会先发出 `UIKeyboardWillShowNotification` 通知,而 `UITextField` 会先发出 `UITextFieldTextDidBeginEditingNotification` 通知。
445445

0 commit comments

Comments
 (0)