1<!doctype html> 2 3 4 5 6 7 8<html class="theme-next pisces use-motion" lang="zh-Hans"> 9<head> 10 <meta charset="UTF-8"/> 11<meta http-equiv="X-UA-Compatible" content="IE=edge" /> 12<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"/> 13 14 15 16<meta http-equiv="Cache-Control" content="no-transform" /> 17<meta http-equiv="Cache-Control" content="no-siteapp" /> 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 <link href="/lib/fancybox/source/jquery.fancybox.css?v=2.1.5" rel="stylesheet" type="text/css" /> 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 <link href="//fonts.googleapis.com/css?family=Lato:300,300italic,400,400italic,700,700italic&subset=latin,latin-ext" rel="stylesheet" type="text/css"> 59 60 61 62 63 64 65 66<link href="/lib/font-awesome/css/font-awesome.min.css?v=4.6.2" rel="stylesheet" type="text/css" /> 67 68<link href="/css/main.css?v=5.1.0" rel="stylesheet" type="text/css" /> 69 70 71 <meta name="keywords" content="iOS,OSX,Objective-C,Xcode,TanHao" /> 72 73 74 75 76 77 78 79 80 <link rel="shortcut icon" type="image/x-icon" href="/favicon.ico?v=5.1.0" /> 81 82 83 84 85 86 87<meta name="description" content="ç¨åºçä¸ç让æçè¿·..."> 88<meta property="og:type" content="website"> 89<meta property="og:title" content="èè°ç¬è®°"> 90<meta property="og:url" content="https://www.tanhao.me/archives/index.html"> 91<meta property="og:site_name" content="èè°ç¬è®°"> 92<meta property="og:description" content="ç¨åºçä¸ç让æçè¿·..."> 93<meta name="twitter:card" content="summary"> 94<meta name="twitter:title" content="èè°ç¬è®°"> 95<meta name="twitter:description" content="ç¨åºçä¸ç让æçè¿·..."> 96 97 98
99<script type="text/javascript" id="hexo.configurations"> 100 var NexT = window.NexT || {}; 101 var CONFIG = { 102 root: '/', 103 scheme: 'Pisces', 104 sidebar: {"position":"right","display":"post"}, 105 fancybox: true, 106 motion: true, 107 duoshuo: { 108 userId: '0', 109 author: 'å主' 110 }, 111 algolia: { 112 applicationID: '', 113 apiKey: '', 114 indexName: '', 115 hits: {"per_page":10}, 116 labels: {"input_placeholder":"Search for Posts","hits_empty":"We didn't find any results for the search: ${query}","hits_stats":"${hits} results found in ${time} ms"} 117 } 118 }; 119</script>
119 120 121 122 123 <link rel="canonical" href="https://www.tanhao.me/archives/"/> 124 125 126 127 128 129 <title> 彿¡£ | èè°ç¬è®° </title> 130</head> 131 132<body itemscope itemtype="http://schema.org/WebPage" lang="zh-Hans"> 133 134 135 136 137 138 139 140
140<script type="text/javascript"> 141 (function() { 142 var hm = document.createElement("script"); 143 hm.src = "//tajs.qq.com/stats?sId=8912449"; 144 var s = document.getElementsByTagName("script")[0]; 145 s.parentNode.insertBefore(hm, s); 146 })(); 147 </script>
147 148 149 150 151 152 153 154 155 156 157 158 159 <div class="container one-collumn sidebar-position-right page-archive "> 160 <div class="headband"></div> 161 162 <header id="header" class="header" itemscope itemtype="http://schema.org/WPHeader"> 163 <div class="header-inner"><div class="site-meta "> 164 165 166 <div class="custom-logo-site-title"> 167 <a href="/" class="brand" rel="start"> 168 <span class="logo-line-before"><i></i></span> 169 <span class="site-title">èè°ç¬è®°</span> 170 <span class="logo-line-after"><i></i></span> 171 </a> 172 </div> 173 174 <p class="site-subtitle"></p> 175 176</div> 177 178<div class="site-nav-toggle"> 179 <button> 180 <span class="btn-bar"></span> 181 <span class="btn-bar"></span> 182 <span class="btn-bar"></span> 183 </button> 184</div> 185 186<nav class="site-nav"> 187 188 189 190 <ul id="menu" class="menu"> 191 192 193 <li class="menu-item menu-item-home"> 194 <a href="/" rel="section"> 195 196 <i class="menu-item-icon fa fa-fw fa-home"></i> <br /> 197 198 é¦é¡µ 199 </a> 200 </li> 201 202 203 <li class="menu-item menu-item-archives"> 204 <a href="/archives" rel="section"> 205 206 <i class="menu-item-icon fa fa-fw fa-archive"></i> <br /> 207 208 彿¡£ 209 </a> 210 </li> 211 212 213 <li class="menu-item menu-item-tags"> 214 <a href="/tags" rel="section"> 215 216 <i class="menu-item-icon fa fa-fw fa-tags"></i> <br /> 217 218 æ ç¾ 219 </a> 220 </li> 221 222 223 <li class="menu-item menu-item-about"> 224 <a href="/about" rel="section"> 225 226 <i class="menu-item-icon fa fa-fw fa-user"></i> <br /> 227 228 å ³äº 229 </a> 230 </li> 231 232 233 234 <li class="menu-item menu-item-search"> 235 236 <a href="javascript:;" class="st-search-show-outputs"> 237 238 239 <i class="menu-item-icon fa fa-search fa-fw"></i> <br /> 240 241 æç´¢ 242 </a> 243 </li> 244 245 </ul> 246 247 248 249 <div class="site-search"> 250 251 <form class="site-search-form"> 252 <input type="text" id="st-search-input" class="st-search-input st-default-search-input" /> 253</form> 254
255<script type="text/javascript"> 256 (function(w,d,t,u,n,s,e){w['SwiftypeObject']=n;w[n]=w[n]||function(){ 257 (w[n].q=w[n].q||[]).push(arguments);};s=d.createElement(t); 258 e=d.getElementsByTagName(t)[0];s.async=1;s.src=u;e.parentNode.insertBefore(s,e); 259 })(window,document,'script','//s.swiftypecdn.com/install/v2/st.js','_st'); 260 261 _st('install', 'Myzn8MXQwxivhKpZtE6L','2.0.0'); 262</script>
262 263 264 265 266 </div> 267 268</nav> 269 270 271 272 </div> 273 </header> 274 275 <main id="main" class="main"> 276 <div class="main-inner"> 277 <div class="content-wrap"> 278 <div id="content" class="content"> 279 280 281 <section id="posts" class="posts-collapse"> 282 <span class="archive-move-on"></span> 283 284 <span class="archive-page-counter"> 285 286 287 288 289 é常好! ç®åå ±è®¡ 152 ç¯æ¥å¿ã ç»§ç»åªåã 290 </span> 291 292 293 294 295 296 297 298 299 300 <div class="collection-title"> 301 <h2 class="archive-year motion-element" id="archive-year-2017">2017</h2> 302 </div> 303 304 305 306 307 308 <article class="post post-type-normal" itemscope itemtype="http://schema.org/Article"> 309 <header class="post-header"> 310 311 <h1 class="post-title"> 312 313 <a class="post-title-link" href="/talk/170924.html/" itemprop="url"> 314 315 <span itemprop="name">ä»è ¾è®¯å°é¿éå·´å·´</span> 316 317 </a> 318 319 </h1> 320 321 <div class="post-meta"> 322 <time class="post-time" itemprop="dateCreated" 323 datetime="2017-09-24T19:31:00+08:00" 324 content="2017-09-24" > 325 09-24 326 </time> 327 </div> 328 329 </header> 330 </article> 331 332 333 334 335 336 337 338 339 340 341 342 <div class="collection-title"> 343 <h2 class="archive-year motion-element" id="archive-year-2016">2016</h2> 344 </div> 345 346 347 348 349 350 <article class="post post-type-normal" itemscope itemtype="http://schema.org/Article"> 351 <header class="post-header"> 352 353 <h1 class="post-title"> 354 355 <a class="post-title-link" href="/code/161127.html/" itemprop="url"> 356 357 <span itemprop="name">Swiftæå¡ç«¯Webæ¡æ¶Kituraåä½éª</span> 358 359 </a> 360 361 </h1> 362 363 <div class="post-meta"> 364 <time class="post-time" itemprop="dateCreated" 365 datetime="2016-11-27T23:31:00+08:00" 366 content="2016-11-27" > 367 11-27 368 </time> 369 </div> 370 371 </header> 372 </article> 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 <article class="post post-type-normal" itemscope itemtype="http://schema.org/Article"> 388 <header class="post-header"> 389 390 <h1 class="post-title"> 391 392 <a class="post-title-link" href="/code/160723.html/" itemprop="url"> 393 394 <span itemprop="name">Method Swizzlingçåç§å§¿å¿</span> 395 396 </a> 397 398 </h1> 399 400 <div class="post-meta"> 401 <time class="post-time" itemprop="dateCreated" 402 datetime="2016-07-24T00:37:00+08:00" 403 content="2016-07-24" > 404 07-24 405 </time> 406 </div> 407 408 </header> 409 </article> 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 <article class="post post-type-normal" itemscope itemtype="http://schema.org/Article"> 425 <header class="post-header"> 426 427 <h1 class="post-title"> 428 429 <a class="post-title-link" href="/code/160702.html/" itemprop="url"> 430 431 <span itemprop="name">使ç¨NSProxyåNSObject设计代çç±»çå·®å¼</span> 432 433 </a> 434 435 </h1> 436 437 <div class="post-meta"> 438 <time class="post-time" itemprop="dateCreated" 439 datetime="2016-07-02T22:49:00+08:00" 440 content="2016-07-02" > 441 07-02 442 </time> 443 </div> 444 445 </header> 446 </article> 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 <article class="post post-type-normal" itemscope itemtype="http://schema.org/Article"> 462 <header class="post-header"> 463 464 <h1 class="post-title"> 465 466 <a class="post-title-link" href="/pieces/160626.html/" itemprop="url"> 467 468 <span itemprop="name">为对象添å ä¸ä¸ªéæ¾æ¶è§¦åçblock</span> 469 470 </a> 471 472 </h1> 473 474 <div class="post-meta"> 475 <time class="post-time" itemprop="dateCreated" 476 datetime="2016-06-26T18:42:00+08:00" 477 content="2016-06-26" > 478 06-26 479 </time> 480 </div> 481 482 </header> 483 </article> 484 485 486 487 488 489 490 491 492 493 494 495 <div class="collection-title">
496 <h2 class="archive-year motion-element" id="archive-year-2015">2015</h2> 497 </div> 498 499 500 501 502 503 <article class="post post-type-normal" itemscope itemtype="http://schema.org/Article"> 504 <header class="post-header"> 505 506 <h1 class="post-title"> 507 508 <a class="post-title-link" href="/code/151113.html/" itemprop="url"> 509 510 <span itemprop="name">iOS宿¶å¡é¡¿çæ§</span> 511 512 </a> 513 514 </h1> 515 516 <div class="post-meta"> 517 <time class="post-time" itemprop="dateCreated" 518 datetime="2015-11-21T14:25:00+08:00" 519 content="2015-11-21" > 520 11-21 521 </time> 522 </div> 523 524 </header> 525 </article> 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 <article class="post post-type-normal" itemscope itemtype="http://schema.org/Article"> 541 <header class="post-header"> 542 543 <h1 class="post-title"> 544 545 <a class="post-title-link" href="/code/150911.html/" itemprop="url"> 546 547 <span itemprop="name">Protocol Bufferæå»ºå示ä¾</span> 548 549 </a> 550 551 </h1> 552 553 <div class="post-meta"> 554 <time class="post-time" itemprop="dateCreated" 555 datetime="2015-09-01T20:58:25+08:00" 556 content="2015-09-01" > 557 09-01 558 </time> 559 </div> 560 561 </header> 562 </article> 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 <article class="post post-type-normal" itemscope itemtype="http://schema.org/Article"> 578 <header class="post-header"> 579 580 <h1 class="post-title"> 581 582 <a class="post-title-link" href="/talk/150725.html/" itemprop="url"> 583 584 <span itemprop="name">å°å¤è¯´è¯è®ºå¯¼å ¥å°Disqus</span> 585 586 </a> 587 588 </h1> 589 590 <div class="post-meta"> 591 <time class="post-time" itemprop="dateCreated" 592 datetime="2015-07-25T12:20:25+08:00" 593 content="2015-07-25" > 594 07-25 595 </time> 596 </div> 597 598 </header> 599 </article> 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 <article class="post post-type-normal" itemscope itemtype="http://schema.org/Article"> 615 <header class="post-header"> 616 617 <h1 class="post-title"> 618 619 <a class="post-title-link" href="/project/150718.html/" itemprop="url"> 620 621 <span itemprop="name">Widgetå¨Dashboardä¹å¤çå»¶ç»</span> 622 623 </a> 624 625 </h1> 626 627 <div class="post-meta"> 628 <time class="post-time" itemprop="dateCreated" 629 datetime="2015-07-18T22:23:55+08:00" 630 content="2015-07-18" > 631 07-18 632 </time> 633 </div> 634 635 </header> 636 </article> 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 <article class="post post-type-normal" itemscope itemtype="http://schema.org/Article"> 652 <header class="post-header"> 653 654 <h1 class="post-title"> 655 656 <a class="post-title-link" href="/code/150608.html/" itemprop="url"> 657 658 <span itemprop="name">è§£å³NSDataä¸å å«éæ³UTF-8ç¼ç </span> 659 660 </a> 661 662 </h1> 663 664 <div class="post-meta"> 665 <time class="post-time" itemprop="dateCreated" 666 datetime="2015-06-08T23:01:55+08:00" 667 content="2015-06-08" > 668 06-08 669 </time> 670 </div> 671 672 </header> 673 </article> 674 675 676 677 678 679 </section> 680 681 682 <nav class="pagination"> 683 <span class="page-number current">1</span><a class="page-number" href="/archives/page/2/">2</a><span class="space">…</span><a class="page-number" href="/archives/page/16/">16</a><a class="extend next" rel="next" href="/archives/page/2/"><i class="fa fa-angle-right"></i></a> 684 </nav> 685 686 687 688 689 </div> 690 691 692 693 694 695 </div> 696 697 698 699 <div class="sidebar-toggle"> 700 <div class="sidebar-toggle-line-wrap"> 701 <span class="sidebar-toggle-line sidebar-toggle-line-first"></span>
702 <span class="sidebar-toggle-line sidebar-toggle-line-middle"></span> 703 <span class="sidebar-toggle-line sidebar-toggle-line-last"></span> 704 </div> 705 </div> 706 707 <aside id="sidebar" class="sidebar"> 708 <div class="sidebar-inner"> 709 710 711 712 713 714 <section class="site-overview sidebar-panel sidebar-panel-active"> 715 <div class="site-author motion-element" itemprop="author" itemscope itemtype="http://schema.org/Person"> 716 <img class="site-author-image" itemprop="image" 717 src="/avatar.jpg" 718 alt="TanHao" /> 719 <p class="site-author-name" itemprop="name">TanHao</p> 720 <p class="site-description motion-element" itemprop="description">ç¨åºçä¸ç让æçè¿·...</p> 721 </div> 722 <nav class="site-state motion-element"> 723 724 725 <div class="site-state-item site-state-posts"> 726 <a href="/archives"> 727 <span class="site-state-item-count">152</span> 728 <span class="site-state-item-name">æ¥å¿</span> 729 </a> 730 </div> 731 732 733 734 <div class="site-state-item site-state-categories"> 735 736 <span class="site-state-item-count">5</span> 737 <span class="site-state-item-name">åç±»</span> 738 739 </div> 740 741 742 743 <div class="site-state-item site-state-tags"> 744 <a href="/tags"> 745 <span class="site-state-item-count">87</span> 746 <span class="site-state-item-name">æ ç¾</span> 747 </a> 748 </div> 749 750 751 </nav> 752 753 754 755 <div class="links-of-author motion-element"> 756 757 </div> 758 759 760 761 762 763 764 <div class="links-of-blogroll motion-element links-of-blogroll-inline"> 765 <div class="links-of-blogroll-title"> 766 <i class="fa fa-fw fa-globe"></i> 767 768 </div> 769 <ul class="links-of-blogroll-list"> 770 771 <li class="links-of-blogroll-item"> 772 <a href="http://www.weisay.com/blog/" title="å¨è¨å¨è¯" target="_blank">å¨è¨å¨è¯</a> 773 </li> 774 775 <li class="links-of-blogroll-item"> 776 <a href="http://www.llku.com/" title="路路åº" target="_blank">路路åº</a> 777 </li> 778 779 <li class="links-of-blogroll-item"> 780 <a href="https://www.fourfire.cc/" title="FourFire" target="_blank">FourFire</a> 781 </li> 782 783 <li class="links-of-blogroll-item"> 784 <a href="http://maccocoa.com/" title="MacCocoa" target="_blank">MacCocoa</a> 785 </li> 786 787 <li class="links-of-blogroll-item"> 788 <a href="http://bbs.cocoachina.com/" title="CocoaChina" target="_blank">CocoaChina</a> 789 </li> 790 791 </ul> 792 </div> 793 794 795 796 797 798 </section> 799 800 801 802 </div> 803 </aside> 804 805 806 807 </div> 808 </main> 809 810 <footer id="footer" class="footer"> 811 <div class="footer-inner"> 812 <div class="copyright" > 813 814 © 2011 - 815 <span itemprop="copyrightYear">2017</span> 816 <span class="with-love"> 817 <i class="fa fa-heart"></i> 818 </span> 819 <span class="author" itemprop="copyrightHolder">TanHao</span> 820</div> 821 822 823<div class="powered-by"> 824 ç± <a class="theme-link" href="https://hexo.io">Hexo</a> 强åé©±å¨ 825</div> 826 827<div class="theme-info"> 828 ä¸»é¢ - 829 <a class="theme-link" href="https://github.com/iissnan/hexo-theme-next"> 830 NexT.Pisces 831 </a> 832</div> 833 834 835 836 837 838 </div> 839 </footer> 840 841 <div class="back-to-top"> 842 <i class="fa fa-arrow-up"></i> 843 </div> 844 </div> 845 846 847
848<script type="text/javascript"> 849 if (Object.prototype.toString.call(window.Promise) !== '[object Function]') { 850 window.Promise = null; 851 } 852</script>
852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867
867<script type="text/javascript" src="/lib/jquery/index.js?v=2.1.3"></script>
867 868 869 870
870<script type="text/javascript" src="/lib/fastclick/lib/fastclick.min.js?v=1.0.6"></script>
870 871 872 873
873<script type="text/javascript" src="/lib/jquery_lazyload/jquery.lazyload.js?v=1.9.7"></script>
873 874 875 876
876<script type="text/javascript" src="/lib/velocity/velocity.min.js?v=1.2.1"></script>
876 877 878 879
879<script type="text/javascript" src="/lib/velocity/velocity.ui.min.js?v=1.2.1"></script>
879 880 881 882
882<script type="text/javascript" src="/lib/fancybox/source/jquery.fancybox.pack.js?v=2.1.5"></script>
882 883 884 885 886 887 888
888<script type="text/javascript" src="/js/src/utils.js?v=5.1.0"></script>
888 889 890
890<script type="text/javascript" src="/js/src/motion.js?v=5.1.0"></script>
890 891 892 893 894 895 896 897 898
898<script type="text/javascript" src="/js/src/affix.js?v=5.1.0"></script>
898 899 900
900<script type="text/javascript" src="/js/src/schemes/pisces.js?v=5.1.0"></script>
900 901 902 903 904 905 906
906<script type="text/javascript" id="motion.page.archive"> 907 $('.archive-year').velocity('transition.slideLeftIn'); 908 </script>
908 909 910 911 912 913 914 915
915<script type="text/javascript" src="/js/src/bootstrap.js?v=5.1.0"></script>
915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951</body> 952</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.