├── (lldb) po newHtml ├── .DS_Store ├── .gitignore ├── LICENSE ├── LaunchScreen.storyboard ├── Podfile ├── Podfile.lock ├── README.md ├── Screenshots ├── IMG_4533.PNG ├── IMG_4554.PNG ├── IMG_5104.PNG ├── IMG_5104.mkm ├── IMG_5105.PNG └── IMG_5106.PNG ├── Today ├── Base.lproj │ └── MainInterface.storyboard ├── Info.plist ├── Today.entitlements ├── TodayCell.h ├── TodayCell.m ├── TodayNetworkTool.h ├── TodayNetworkTool.m ├── TodayViewController.h └── TodayViewController.m ├── v2ex.xcodeproj ├── project.pbxproj ├── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcuserdata │ │ └── wutouqishigj.xcuserdatad │ │ └── UserInterfaceState.xcuserstate ├── xcshareddata │ └── xcschemes │ │ └── v2ex.xcscheme └── xcuserdata │ └── wutouqishigj.xcuserdatad │ └── xcschemes │ └── xcschememanagement.plist ├── v2ex.xcworkspace ├── contents.xcworkspacedata └── xcuserdata │ └── wutouqishigj.xcuserdatad │ ├── UserInterfaceState.xcuserstate │ └── xcdebugger │ └── Breakpoints_v2.xcbkptlist ├── v2ex ├── .DS_Store ├── AppDelegate.h ├── AppDelegate.m ├── Assets.xcassets │ ├── .DS_Store │ ├── 3DTouch │ │ ├── 3dTouch_Icon_Add.imageset │ │ │ ├── 3dTouch_Icon_Add@2x.png │ │ │ ├── 3dTouch_Icon_Add@3x.png │ │ │ └── Contents.json │ │ ├── 3dTouch_Icon_Hot.imageset │ │ │ ├── 3dTouch_Icon_Hot@2x.png │ │ │ ├── 3dTouch_Icon_Hot@3x.png │ │ │ └── Contents.json │ │ ├── 3dTouch_Icon_Notification.imageset │ │ │ ├── 3dTouch_Icon_Notification@2x.png │ │ │ ├── 3dTouch_Icon_Notification@3x.png │ │ │ └── Contents.json │ │ ├── 3dTouch_Icon_Search.imageset │ │ │ ├── 3dTouch_Icon_Search@2x.png │ │ │ └── Contents.json │ │ └── Contents.json │ ├── Action │ │ ├── Contents.json │ │ ├── action_favorite.imageset │ │ │ ├── Contents.json │ │ │ ├── action_favorite@2x.png │ │ │ └── action_favorite@3x.png │ │ ├── action_forbidden.imageset │ │ │ ├── Contents.json │ │ │ ├── action_forbidden@2x.png │ │ │ └── action_forbidden@3x.png │ │ ├── action_safari.imageset │ │ │ ├── Contents.json │ │ │ ├── action_safari@2x.png │ │ │ └── action_safari@3x.png │ │ └── action_thank.imageset │ │ │ ├── Contents.json │ │ │ ├── action_thank@2x.png │ │ │ └── action_thank@3x.png │ ├── AppIcon.appiconset │ │ ├── .DS_Store │ │ ├── 1024x1024bb-1.png │ │ ├── 1024x1024bb.png │ │ ├── AppIcon-2.png │ │ ├── AppIcon-3.png │ │ ├── AppIcon-4.png │ │ ├── AppIcon.png │ │ └── Contents.json │ ├── Contents.json │ ├── Discovery │ │ ├── Contents.json │ │ └── discovery_loading_run.imageset │ │ │ ├── Contents.json │ │ │ └── discovery_loading_run.png │ ├── Login │ │ ├── Contents.json │ │ ├── icon_close.imageset │ │ │ ├── Contents.json │ │ │ ├── icon_close@2x.png │ │ │ └── icon_close@3x.png │ │ ├── login_bg01.imageset │ │ │ ├── Contents.json │ │ │ └── login_bg.png │ │ ├── login_bottomarrow.imageset │ │ │ ├── Contents.json │ │ │ └── login_bottomarrow.png │ │ ├── login_email.imageset │ │ │ ├── Contents.json │ │ │ └── login_email@2x.png │ │ ├── login_password.imageset │ │ │ ├── Contents.json │ │ │ └── login_password.png │ │ ├── login_showpwd.imageset │ │ │ ├── Contents.json │ │ │ └── login_showpwd.png │ │ ├── login_telephone.imageset │ │ │ ├── Contents.json │ │ │ └── login_telephone@2x.png │ │ ├── login_username.imageset │ │ │ ├── Contents.json │ │ │ └── login_username.png │ │ └── login_verificationCode.imageset │ │ │ ├── Contents.json │ │ │ └── login_verificationCode@2x.png │ ├── Me │ │ ├── Contents.json │ │ └── register_bg.imageset │ │ │ ├── Contents.json │ │ │ └── register_bg.jpg │ ├── More │ │ ├── .DS_Store │ │ ├── Contents.json │ │ ├── ipad_player_setup_arrow.imageset │ │ │ ├── Contents.json │ │ │ ├── ipad_player_setup_arrow.png │ │ │ └── ipad_player_setup_arrow@2x.png │ │ ├── mine_favourite.imageset │ │ │ ├── Contents.json │ │ │ ├── mine_favourite@2x~iphone.png │ │ │ └── mine_favourite@3x~iphone.png │ │ ├── mine_follow.imageset │ │ │ ├── Contents.json │ │ │ ├── mine_follow@2x~iphone.png │ │ │ └── mine_follow@3x~iphone.png │ │ ├── mine_theme.imageset │ │ │ ├── Contents.json │ │ │ ├── mine_theme@2x~iphone.png │ │ │ └── mine_theme@3x~iphone.png │ │ ├── mine_topic.imageset │ │ │ ├── Contents.json │ │ │ └── mine_topic.png │ │ ├── more_about.imageset │ │ │ ├── Contents.json │ │ │ └── more_about.png │ │ ├── more_ad.imageset │ │ │ ├── Contents.json │ │ │ └── more_ad.png │ │ ├── more_collection.imageset │ │ │ ├── Contents.json │ │ │ └── more_collection.png │ │ ├── more_group.imageset │ │ │ ├── Contents.json │ │ │ └── more_group.png │ │ ├── more_location.imageset │ │ │ ├── Contents.json │ │ │ └── more_location.png │ │ ├── more_logout.imageset │ │ │ ├── Contents.json │ │ │ └── more_logout.png │ │ ├── more_pingfen.imageset │ │ │ ├── Contents.json │ │ │ └── more_pingfen@2x.png │ │ ├── more_privacystatement.imageset │ │ │ ├── Contents.json │ │ │ └── more_privacystatement.png │ │ ├── more_project.imageset │ │ │ ├── Contents.json │ │ │ └── more_project.png │ │ ├── more_systemnoti.imageset │ │ │ ├── Contents.json │ │ │ └── more_systemnoti.png │ │ ├── online.imageset │ │ │ ├── Contents.json │ │ │ └── online.png │ │ ├── social_geo.imageset │ │ │ ├── Contents.json │ │ │ └── social_geo.png │ │ ├── social_github.imageset │ │ │ ├── Contents.json │ │ │ └── social_github.png │ │ └── social_home.imageset │ │ │ ├── Contents.json │ │ │ └── social_home.png │ ├── Nav │ │ ├── Contents.json │ │ ├── commodity_nav_share.imageset │ │ │ ├── Contents.json │ │ │ ├── commodity_nav_share@2x.png │ │ │ └── commodity_nav_share@3x.png │ │ ├── common_back_new.imageset │ │ │ ├── Contents.json │ │ │ ├── common_back_new@2x.png │ │ │ └── common_back_new@3x.png │ │ ├── nav_close_white_normal.imageset │ │ │ ├── Contents.json │ │ │ └── iconfont-guanbi.png │ │ └── nav_share_normal.imageset │ │ │ ├── Contents.json │ │ │ └── nav_share_normal.png │ ├── Node │ │ ├── Contents.json │ │ ├── no_topic.imageset │ │ │ ├── Contents.json │ │ │ └── no_topic.png │ │ ├── nodeTopicCount.imageset │ │ │ ├── Contents.json │ │ │ └── nodeTopicCount.png │ │ ├── nodeTopicLike.imageset │ │ │ ├── Contents.json │ │ │ └── nodeTopicLike.png │ │ ├── node_collected.imageset │ │ │ ├── Contents.json │ │ │ └── node_collected.png │ │ ├── node_collection.imageset │ │ │ ├── Contents.json │ │ │ └── node_collection.png │ │ ├── node_large_default.imageset │ │ │ ├── Contents.json │ │ │ └── node_large_default.png │ │ ├── node_not collected.imageset │ │ │ ├── Contents.json │ │ │ └── node_not collected.png │ │ ├── node_time.imageset │ │ │ ├── Contents.json │ │ │ └── node_time.png │ │ ├── node_topics.imageset │ │ │ ├── Contents.json │ │ │ └── node_topics.png │ │ └── time.imageset │ │ │ ├── Contents.json │ │ │ └── time.png │ ├── Notification │ │ └── Contents.json │ ├── TabBar │ │ ├── Contents.json │ │ ├── Tabbar_Discover_Normal.imageset │ │ │ ├── Contents.json │ │ │ ├── Tabbar_Discover_Normal@1x.png │ │ │ ├── Tabbar_Discover_Normal@2x.png │ │ │ └── Tabbar_Discover_Normal@3x.png │ │ ├── Tabbar_Feed_Normal.imageset │ │ │ ├── Contents.json │ │ │ ├── Tabbar_Feed_Normal@1x.png │ │ │ ├── Tabbar_Feed_Normal@2x.png │ │ │ └── Tabbar_Feed_Normal@3x.png │ │ ├── Tabbar_Messages_Normal.imageset │ │ │ ├── Contents.json │ │ │ ├── Tabbar_Messages_Normal@1x.png │ │ │ ├── Tabbar_Messages_Normal@2x.png │ │ │ └── Tabbar_Messages_Normal@3x.png │ │ ├── Tabbar_More_Normal.imageset │ │ │ ├── Contents.json │ │ │ ├── Tabbar_More_Normal@1x.png │ │ │ ├── Tabbar_More_Normal@2x.png │ │ │ └── Tabbar_More_Normal@3x.png │ │ ├── Tabbar_Notifications_Normal.imageset │ │ │ ├── Contents.json │ │ │ ├── Tabbar_Notifications_Normal@1x.png │ │ │ ├── Tabbar_Notifications_Normal@2x.png │ │ │ └── Tabbar_Notifications_Normal@3x.png │ │ ├── arrow.imageset │ │ │ ├── Contents.json │ │ │ └── arrow.png │ │ └── tabbar_hot_normal.imageset │ │ │ ├── Contents.json │ │ │ └── tabbar_hot_normal@2x.png │ ├── Topic │ │ ├── Contents.json │ │ ├── collection_normal.imageset │ │ │ ├── Contents.json │ │ │ └── collection_normal.png │ │ ├── collection_selected.imageset │ │ │ ├── Contents.json │ │ │ └── collection_selected.png │ │ ├── love_normal.imageset │ │ │ ├── Contents.json │ │ │ └── love_normal.png │ │ ├── love_selected.imageset │ │ │ ├── Contents.json │ │ │ └── love_selected.png │ │ ├── next_normal.imageset │ │ │ ├── Contents.json │ │ │ └── next_normal.png │ │ ├── prev_normal.imageset │ │ │ ├── Contents.json │ │ │ └── prev_normal.png │ │ ├── refresh_normal.imageset │ │ │ ├── Contents.json │ │ │ └── refresh_normal.png │ │ ├── reply_arrow.imageset │ │ │ ├── Contents.json │ │ │ └── reply_arrow.png │ │ ├── reply_close_normal.imageset │ │ │ ├── Contents.json │ │ │ └── reply_close_normal@2x.png │ │ ├── reply_normal.imageset │ │ │ ├── Contents.json │ │ │ └── reply_normal.png │ │ ├── reply_photo_normal.imageset │ │ │ ├── Contents.json │ │ │ └── reply_photo_normal@2x.png │ │ ├── reply_send_normal.imageset │ │ │ ├── Contents.json │ │ │ └── reply_send_normal@2x.png │ │ ├── safari_normal.imageset │ │ │ ├── Contents.json │ │ │ └── iconfont-safari.png │ │ ├── tip_success.imageset │ │ │ ├── Contents.json │ │ │ └── tip_success.png │ │ ├── tip_success_normal.imageset │ │ │ ├── Contents.json │ │ │ └── tip_success_normal.png │ │ ├── topic_delete_normal.imageset │ │ │ ├── Contents.json │ │ │ └── topic_delete_normal.png │ │ ├── topic_reply_normal.imageset │ │ │ ├── Contents.json │ │ │ └── iconfont-qz-2.png │ │ ├── topic_time_black.imageset │ │ │ ├── Contents.json │ │ │ └── topic_time_black.png │ │ ├── topic_time_normal.imageset │ │ │ ├── Contents.json │ │ │ └── iconfont-shijian.png │ │ └── topic_user_black.imageset │ │ │ ├── Contents.json │ │ │ └── topic_user_black.png │ ├── icon.imageset │ │ ├── Contents.json │ │ └── icon.png │ ├── launchBG01.imageset │ │ ├── Contents.json │ │ └── launchBG01.png │ ├── lol.imageset │ │ ├── Contents.json │ │ └── lol.png │ ├── member_detail_normal.imageset │ │ ├── Contents.json │ │ └── member_detail_normal.png │ ├── no_notification.imageset │ │ ├── Contents.json │ │ └── no_notification.png │ ├── share_img.imageset │ │ ├── AppIcon1.png │ │ └── Contents.json │ ├── timo.imageset │ │ ├── Contents.json │ │ └── timo.jpg │ ├── topic_avatar_normal.imageset │ │ ├── Contents.json │ │ └── topic_avatar_normal.png │ ├── webView_next.imageset │ │ ├── Contents.json │ │ └── webView_next.png │ ├── webView_next_disabled.imageset │ │ ├── Contents.json │ │ └── webView_next_enable.png │ ├── webView_refresh.imageset │ │ ├── Contents.json │ │ └── webView_refresh.png │ ├── webView_refresh_disabled.imageset │ │ ├── Contents.json │ │ └── webView_refresh_disabled.png │ ├── webView_return.imageset │ │ ├── Contents.json │ │ └── webView_return.png │ └── webView_return_disabled.imageset │ │ ├── Contents.json │ │ └── webView_return_enable.png ├── Classes │ ├── .DS_Store │ ├── Discovery-发现 │ │ └── Hot-最热 │ │ │ ├── Controller │ │ │ ├── WTHotTopicViewController.h │ │ │ ├── WTHotTopicViewController.m │ │ │ └── WTHotTopicViewController.xib │ │ │ ├── Model │ │ │ ├── WTSearchTopic.h │ │ │ ├── WTSearchTopic.m │ │ │ ├── WTSearchTopicRsp.h │ │ │ └── WTSearchTopicRsp.m │ │ │ ├── View │ │ │ ├── WTSearchTopicCell.h │ │ │ ├── WTSearchTopicCell.m │ │ │ └── WTSearchTopicCell.xib │ │ │ └── ViewModel │ │ │ ├── WTHotTopicViewModel.h │ │ │ ├── WTHotTopicViewModel.m │ │ │ ├── WTSearchTopicReq.h │ │ │ └── WTSearchTopicReq.m │ ├── Home-首页 │ │ ├── .DS_Store │ │ ├── Home-首页 │ │ │ ├── Controller │ │ │ │ ├── WTHomeViewController.h │ │ │ │ ├── WTHomeViewController.m │ │ │ │ ├── WTTopicViewController.h │ │ │ │ ├── WTTopicViewController.m │ │ │ │ ├── WTWYViewController.h │ │ │ │ └── WTWYViewController.m │ │ │ ├── Model │ │ │ │ ├── WTNode.h │ │ │ │ ├── WTNode.m │ │ │ │ ├── WTNodeApiItem.h │ │ │ │ ├── WTNodeApiItem.m │ │ │ │ ├── WTTopic.h │ │ │ │ ├── WTTopic.m │ │ │ │ ├── WTTopicApiItem.h │ │ │ │ └── WTTopicApiItem.m │ │ │ ├── View │ │ │ │ ├── WTTipView.h │ │ │ │ ├── WTTipView.m │ │ │ │ ├── WTTipView.xib │ │ │ │ ├── WTTopicCell.h │ │ │ │ ├── WTTopicCell.m │ │ │ │ └── WTTopicCell.xib │ │ │ └── ViewModel │ │ │ │ ├── WTTopicViewModel.h │ │ │ │ └── WTTopicViewModel.m │ │ ├── HotTopic-热门节点 │ │ │ ├── Controller │ │ │ │ └── .DS_Store │ │ │ ├── Model │ │ │ │ └── .DS_Store │ │ │ ├── View │ │ │ │ └── .DS_Store │ │ │ └── ViewModel │ │ │ │ └── .DS_Store │ │ ├── MemberDetail-会员详情 │ │ │ ├── .DS_Store │ │ │ ├── Controller │ │ │ │ ├── WTMemberDetailViewController.h │ │ │ │ ├── WTMemberDetailViewController.m │ │ │ │ ├── WTMemberInfoTableViewController.h │ │ │ │ ├── WTMemberInfoTableViewController.m │ │ │ │ ├── WTMemberInfoTableViewController.storyboard │ │ │ │ ├── WTMemberInfoViewController.h │ │ │ │ ├── WTMemberInfoViewController.m │ │ │ │ ├── WTMemberInfoViewController.storyboard │ │ │ │ ├── WTMemberReplyViewController.h │ │ │ │ ├── WTMemberReplyViewController.m │ │ │ │ ├── WTMemberTopicViewController.h │ │ │ │ └── WTMemberTopicViewController.m │ │ │ └── ViewModel │ │ │ │ ├── WTMemberTopicViewModel.h │ │ │ │ └── WTMemberTopicViewModel.m │ │ ├── Search-搜索 │ │ │ └── .DS_Store │ │ └── TopicDetail-话题详情 │ │ │ ├── Controller │ │ │ ├── WTPostReplyViewController.h │ │ │ ├── WTPostReplyViewController.m │ │ │ ├── WTPostReplyViewController.xib │ │ │ ├── WTTopicDetailTableViewController.h │ │ │ ├── WTTopicDetailTableViewController.m │ │ │ ├── WTTopicDetailTableViewController.storyboard │ │ │ ├── WTTopicDetailViewController.h │ │ │ ├── WTTopicDetailViewController.m │ │ │ └── WTTopicDetailViewController.storyboard │ │ │ ├── Model │ │ │ ├── WTTopicDetail.h │ │ │ └── WTTopicDetail.m │ │ │ ├── View │ │ │ ├── WTToolBarView.h │ │ │ ├── WTToolBarView.m │ │ │ ├── WTToolBarView.xib │ │ │ ├── WTTopicDetailCommentCell.h │ │ │ ├── WTTopicDetailCommentCell.m │ │ │ ├── WTTopicDetailContentCell.h │ │ │ ├── WTTopicDetailContentCell.m │ │ │ ├── WTTopicDetailHeadCell.h │ │ │ └── WTTopicDetailHeadCell.m │ │ │ └── ViewModel │ │ │ ├── WTTopicDetailViewModel.h │ │ │ └── WTTopicDetailViewModel.m │ ├── Main │ │ ├── .DS_Store │ │ ├── Controller │ │ │ ├── PhotoBrowserViewController.h │ │ │ ├── PhotoBrowserViewController.m │ │ │ ├── WTBaseSlidingViewController.h │ │ │ ├── WTBaseSlidingViewController.m │ │ │ ├── WTBaseTableViewController.h │ │ │ ├── WTBaseTableViewController.m │ │ │ ├── WTWebViewController.h │ │ │ ├── WTWebViewController.m │ │ │ └── WTWebViewController.xib │ │ └── View │ │ │ ├── PhotoBrowserCell.h │ │ │ ├── PhotoBrowserCell.m │ │ │ ├── WTNoDataView.h │ │ │ ├── WTNoDataView.m │ │ │ ├── WTNoDataView.xib │ │ │ ├── WTNoLoginView.h │ │ │ ├── WTNoLoginView.m │ │ │ ├── WTNoLoginView.xib │ │ │ ├── WTProgressHUD.h │ │ │ ├── WTProgressHUD.m │ │ │ ├── WTRefreshAutoNormalFooter.h │ │ │ ├── WTRefreshAutoNormalFooter.m │ │ │ ├── WTRefreshNormalHeader.h │ │ │ ├── WTRefreshNormalHeader.m │ │ │ ├── WTRefreshView.h │ │ │ ├── WTRefreshView.m │ │ │ ├── WTRefreshView.xib │ │ │ ├── WTTopWindow.h │ │ │ └── WTTopWindow.m │ ├── More-更多 │ │ ├── .DS_Store │ │ ├── More-更多 │ │ │ ├── .DS_Store │ │ │ ├── Controller │ │ │ │ ├── WTMoreViewController.h │ │ │ │ └── WTMoreViewController.m │ │ │ ├── Model │ │ │ │ ├── WTSettingItem.h │ │ │ │ └── WTSettingItem.m │ │ │ └── View │ │ │ │ ├── WTMoreButton.h │ │ │ │ ├── WTMoreButton.m │ │ │ │ ├── WTMoreCell.h │ │ │ │ ├── WTMoreCell.m │ │ │ │ ├── WTMoreLoginHeaderView.h │ │ │ │ ├── WTMoreLoginHeaderView.m │ │ │ │ ├── WTMoreLoginHeaderView.xib │ │ │ │ ├── WTMoreNotLoginHeaderView.h │ │ │ │ ├── WTMoreNotLoginHeaderView.m │ │ │ │ └── WTMoreNotLoginHeaderView.xib │ │ ├── MyFollowing-我的关注 │ │ │ ├── Controller │ │ │ │ ├── WTMyFollowingViewController.h │ │ │ │ ├── WTMyFollowingViewController.m │ │ │ │ └── WTMyFollowingViewController.xib │ │ │ ├── Model │ │ │ │ ├── WTMyFollowingItem.h │ │ │ │ └── WTMyFollowingItem.m │ │ │ ├── View │ │ │ │ ├── WTMyFollowingCell.h │ │ │ │ ├── WTMyFollowingCell.m │ │ │ │ └── WTMyFollowingCell.xib │ │ │ └── ViewModel │ │ │ │ ├── WTMyFollowingViewModel.h │ │ │ │ └── WTMyFollowingViewModel.m │ │ ├── MyReply-我的回复 │ │ │ ├── Controller │ │ │ │ ├── WTMyReplyViewController.h │ │ │ │ ├── WTMyReplyViewController.m │ │ │ │ └── WTMyReplyViewController.xib │ │ │ ├── Model │ │ │ │ ├── WTReplyApiItem.h │ │ │ │ ├── WTReplyItem.h │ │ │ │ └── WTReplyItem.m │ │ │ ├── View │ │ │ │ ├── WTReplyCell.h │ │ │ │ ├── WTReplyCell.m │ │ │ │ └── WTReplyCell.xib │ │ │ └── ViewModel │ │ │ │ ├── WTReplyViewModel.h │ │ │ │ └── WTReplyViewModel.m │ │ ├── MyTopic-我的话题 │ │ │ ├── .DS_Store │ │ │ └── Controller │ │ │ │ ├── WTMyTopicViewController.h │ │ │ │ ├── WTMyTopicViewController.m │ │ │ │ └── WTMyTopicViewController.xib │ │ ├── NodeCollection-节点收藏 │ │ │ ├── .DS_Store │ │ │ ├── Controller │ │ │ │ ├── WTNodeCollectionViewController.h │ │ │ │ ├── WTNodeCollectionViewController.m │ │ │ │ └── WTNodeCollectionViewController.xib │ │ │ └── View │ │ │ │ ├── WTNodeCollectionCell.h │ │ │ │ ├── WTNodeCollectionCell.m │ │ │ │ └── WTNodeCollectionCell.xib │ │ ├── PrivacyStatement-隐私声明 │ │ │ ├── Advertise-广告 │ │ │ │ ├── Controller │ │ │ │ │ ├── WTAdvertiseViewController.h │ │ │ │ │ ├── WTAdvertiseViewController.m │ │ │ │ │ └── WTAdvertiseViewController.xib │ │ │ │ ├── Model │ │ │ │ │ ├── WTAdvertiseItem.h │ │ │ │ │ └── WTAdvertiseItem.m │ │ │ │ ├── View │ │ │ │ │ ├── WTAdvertiseCell.h │ │ │ │ │ ├── WTAdvertiseCell.m │ │ │ │ │ └── WTAdvertiseCell.xib │ │ │ │ └── ViewModel │ │ │ │ │ ├── WTAdvertiseViewModel.h │ │ │ │ │ └── WTAdvertiseViewModel.m │ │ │ └── Controller │ │ │ │ ├── WTPrivacyStatementViewController.h │ │ │ │ ├── WTPrivacyStatementViewController.m │ │ │ │ └── WTPrivacyStatementViewController.xib │ │ └── TopicCollection-话题收藏 │ │ │ ├── .DS_Store │ │ │ ├── Controller │ │ │ ├── WTTopicCollectionViewController.h │ │ │ ├── WTTopicCollectionViewController.m │ │ │ └── WTTopicCollectionViewController.xib │ │ │ ├── Model │ │ │ ├── WTTopicCollectionItem.h │ │ │ └── WTTopicCollectionItem.m │ │ │ ├── View │ │ │ ├── WTTopicCollectionCell.h │ │ │ ├── WTTopicCollectionCell.m │ │ │ └── WTTopicCollectionCell.xib │ │ │ └── ViewModel │ │ │ ├── WTTopicCollectionViewModel.h │ │ │ └── WTTopicCollectionViewModel.m │ ├── Node-节点 │ │ ├── Node-节点 │ │ │ ├── Controller │ │ │ │ ├── WTAllNodeViewController.h │ │ │ │ ├── WTAllNodeViewController.m │ │ │ │ ├── WTAllNodeViewController.xib │ │ │ │ ├── WTHotNodeFlowLayout.h │ │ │ │ ├── WTHotNodeFlowLayout.m │ │ │ │ ├── WTHotNodeViewController.h │ │ │ │ ├── WTHotNodeViewController.m │ │ │ │ ├── WTNodeViewController.h │ │ │ │ ├── WTNodeViewController.m │ │ │ │ └── WTNodeViewController.xib │ │ │ ├── Model │ │ │ │ ├── WTNodeItem.h │ │ │ │ └── WTNodeItem.m │ │ │ ├── View │ │ │ │ ├── WTHotNodeCell.h │ │ │ │ ├── WTHotNodeCell.m │ │ │ │ ├── WTHotNodeCell.xib │ │ │ │ ├── WTHotNodeReusableView.h │ │ │ │ ├── WTHotNodeReusableView.m │ │ │ │ └── WTHotNodeReusableView.xib │ │ │ └── ViewModel │ │ │ │ ├── WTNodeViewModel.h │ │ │ │ └── WTNodeViewModel.m │ │ └── NodeTopic-节点话题 │ │ │ ├── Controller │ │ │ ├── WTNodeTopicViewController.h │ │ │ └── WTNodeTopicViewController.m │ │ │ ├── Model │ │ │ ├── WTNodeTopicAPIItem.h │ │ │ └── WTNodeTopicAPIItem.m │ │ │ └── View │ │ │ ├── WTNodeTopicCell.h │ │ │ ├── WTNodeTopicCell.m │ │ │ ├── WTNodeTopicCell.xib │ │ │ ├── WTNodeTopicHeaderView.h │ │ │ ├── WTNodeTopicHeaderView.m │ │ │ └── WTNodeTopicHeaderView.xib │ ├── Notification-通知 │ │ ├── Controller │ │ │ ├── WTUserNotificationViewController.h │ │ │ ├── WTUserNotificationViewController.m │ │ │ └── WTUserNotificationViewController.xib │ │ ├── Model │ │ │ ├── WTNotificationItem.h │ │ │ └── WTNotificationItem.m │ │ ├── View │ │ │ ├── WTNotificationCell.h │ │ │ ├── WTNotificationCell.m │ │ │ └── WTNotificationCell.xib │ │ └── ViewModel │ │ │ ├── WTNotificationViewModel.h │ │ │ └── WTNotificationViewModel.m │ ├── Other │ │ ├── .DS_Store │ │ ├── Category │ │ │ ├── NSString+Extension.h │ │ │ ├── NSString+Extension.m │ │ │ ├── NSString+Regex.h │ │ │ ├── NSString+Regex.m │ │ │ ├── UIBarButtonItem+Extension.h │ │ │ ├── UIBarButtonItem+Extension.m │ │ │ ├── UIButton+Extension.h │ │ │ ├── UIButton+Extension.m │ │ │ ├── UIColor+Extension.h │ │ │ ├── UIColor+Extension.m │ │ │ ├── UIFont+Extension.h │ │ │ ├── UIFont+Extension.m │ │ │ ├── UIImage+Extension.h │ │ │ ├── UIImage+Extension.m │ │ │ ├── UILabel+StringFrame.h │ │ │ ├── UILabel+StringFrame.m │ │ │ ├── UITableView+Extension.h │ │ │ ├── UITableView+Extension.m │ │ │ ├── UITableViewController+Extension.h │ │ │ ├── UITableViewController+Extension.m │ │ │ ├── UITextField+Placeholder.h │ │ │ ├── UITextField+Placeholder.m │ │ │ ├── UITextView+Placeholder.h │ │ │ ├── UITextView+Placeholder.m │ │ │ ├── UIView+Frame.h │ │ │ ├── UIView+Frame.m │ │ │ ├── UIView+init.h │ │ │ ├── UIView+init.m │ │ │ ├── UIViewController+Extension.h │ │ │ └── UIViewController+Extension.m │ │ ├── Const │ │ │ ├── WTConst.h │ │ │ ├── WTConst.m │ │ │ ├── WTURLConst.h │ │ │ └── WTURLConst.m │ │ ├── Lib │ │ │ ├── .DS_Store │ │ │ ├── MMMarkdown │ │ │ │ ├── Info.plist │ │ │ │ ├── MMDocument.h │ │ │ │ ├── MMDocument.m │ │ │ │ ├── MMDocument_Private.h │ │ │ │ ├── MMElement.h │ │ │ │ ├── MMElement.m │ │ │ │ ├── MMGenerator.h │ │ │ │ ├── MMGenerator.m │ │ │ │ ├── MMHTMLParser.h │ │ │ │ ├── MMHTMLParser.m │ │ │ │ ├── MMMarkdown-Prefix.pch │ │ │ │ ├── MMMarkdown.h │ │ │ │ ├── MMMarkdown.m │ │ │ │ ├── MMParser.h │ │ │ │ ├── MMParser.m │ │ │ │ ├── MMScanner.h │ │ │ │ ├── MMScanner.m │ │ │ │ ├── MMSpanParser.h │ │ │ │ └── MMSpanParser.m │ │ │ ├── ShareSDK │ │ │ │ ├── ShareSDK.framework │ │ │ │ │ ├── .DS_Store │ │ │ │ │ ├── Headers │ │ │ │ │ │ ├── ISSDKAuthView.h │ │ │ │ │ │ ├── NSMutableDictionary+SSDKInit.h │ │ │ │ │ │ ├── NSMutableDictionary+SSDKShare.h │ │ │ │ │ │ ├── SSDKAuthViewStyle.h │ │ │ │ │ │ ├── SSDKContentEntity.h │ │ │ │ │ │ ├── SSDKCredential.h │ │ │ │ │ │ ├── SSDKData.h │ │ │ │ │ │ ├── SSDKFriendsPaging.h │ │ │ │ │ │ ├── SSDKGooglePlusControllerStyle.h │ │ │ │ │ │ ├── SSDKImage.h │ │ │ │ │ │ ├── SSDKMailViewControllerStyle.h │ │ │ │ │ │ ├── SSDKPlatform.h │ │ │ │ │ │ ├── SSDKSMSViewControllerStyle.h │ │ │ │ │ │ ├── SSDKTypeDefine.h │ │ │ │ │ │ ├── SSDKUser.h │ │ │ │ │ │ ├── SSDKUserQueryConditional.h │ │ │ │ │ │ ├── ShareSDK+Base.h │ │ │ │ │ │ └── ShareSDK.h │ │ │ │ │ ├── Info.plist │ │ │ │ │ └── ShareSDK │ │ │ │ └── Support │ │ │ │ │ ├── Optional │ │ │ │ │ ├── ShareSDKExtension.framework │ │ │ │ │ │ ├── .DS_Store │ │ │ │ │ │ ├── Headers │ │ │ │ │ │ │ ├── SSEBaseUser.h │ │ │ │ │ │ │ ├── SSEShareHelper.h │ │ │ │ │ │ │ ├── SSEThirdPartyLoginHelper.h │ │ │ │ │ │ │ └── ShareSDK+Extension.h │ │ │ │ │ │ ├── Info.plist │ │ │ │ │ │ └── ShareSDKExtension │ │ │ │ │ ├── ShareSDKUI.bundle │ │ │ │ │ │ ├── Base.lproj │ │ │ │ │ │ │ └── ShareSDKUI_Localizable.strings │ │ │ │ │ │ ├── ContentEditorImg │ │ │ │ │ │ │ └── line@2x.gif │ │ │ │ │ │ ├── Icon │ │ │ │ │ │ │ ├── sns_icon_1.png │ │ │ │ │ │ │ ├── sns_icon_1@2x.png │ │ │ │ │ │ │ ├── sns_icon_22.png │ │ │ │ │ │ │ ├── sns_icon_22@2x.png │ │ │ │ │ │ │ ├── sns_icon_23.png │ │ │ │ │ │ │ ├── sns_icon_23@2x.png │ │ │ │ │ │ │ ├── sns_icon_24.png │ │ │ │ │ │ │ ├── sns_icon_24@2x.png │ │ │ │ │ │ │ ├── sns_icon_37.png │ │ │ │ │ │ │ ├── sns_icon_37@2x.png │ │ │ │ │ │ │ ├── sns_icon_6.png │ │ │ │ │ │ │ └── sns_icon_6@2x.png │ │ │ │ │ │ ├── en.lproj │ │ │ │ │ │ │ └── ShareSDKUI_Localizable.strings │ │ │ │ │ │ └── zh-Hans.lproj │ │ │ │ │ │ │ └── ShareSDKUI_Localizable.strings │ │ │ │ │ └── ShareSDKUI.framework │ │ │ │ │ │ ├── .DS_Store │ │ │ │ │ │ ├── Headers │ │ │ │ │ │ ├── SSUIEditorViewStyle.h │ │ │ │ │ │ ├── SSUIShareActionSheetController.h │ │ │ │ │ │ ├── SSUIShareActionSheetCustomItem.h │ │ │ │ │ │ ├── SSUIShareActionSheetItem.h │ │ │ │ │ │ ├── SSUIShareActionSheetStyle.h │ │ │ │ │ │ ├── SSUIShareContentEditorViewController.h │ │ │ │ │ │ ├── SSUITypeDef.h │ │ │ │ │ │ ├── ShareSDK+SSUI.h │ │ │ │ │ │ └── ShareSDKUI.h │ │ │ │ │ │ ├── Info.plist │ │ │ │ │ │ └── ShareSDKUI │ │ │ │ │ ├── PlatformSDK │ │ │ │ │ ├── QQSDK │ │ │ │ │ │ ├── .DS_Store │ │ │ │ │ │ ├── TencentOpenAPI.framework │ │ │ │ │ │ │ ├── Headers │ │ │ │ │ │ │ │ ├── QQApiInterface.h │ │ │ │ │ │ │ │ ├── QQApiInterfaceObject.h │ │ │ │ │ │ │ │ ├── TencentApiInterface.h │ │ │ │ │ │ │ │ ├── TencentMessageObject.h │ │ │ │ │ │ │ │ ├── TencentOAuth.h │ │ │ │ │ │ │ │ ├── TencentOAuthObject.h │ │ │ │ │ │ │ │ └── sdkdef.h │ │ │ │ │ │ │ ├── Resources │ │ │ │ │ │ │ │ └── ios_open_sdk_3.1.0.3_iphone │ │ │ │ │ │ │ └── TencentOpenAPI │ │ │ │ │ │ └── TencentOpenApi_IOS_Bundle.bundle │ │ │ │ │ │ │ ├── error.png │ │ │ │ │ │ │ ├── local.html │ │ │ │ │ │ │ ├── qqicon.png │ │ │ │ │ │ │ └── success.png │ │ │ │ │ ├── SinaWeiboSDK │ │ │ │ │ │ ├── .DS_Store │ │ │ │ │ │ ├── WBHttpRequest+WeiboGame.h │ │ │ │ │ │ ├── WBHttpRequest+WeiboShare.h │ │ │ │ │ │ ├── WBHttpRequest+WeiboToken.h │ │ │ │ │ │ ├── WBHttpRequest+WeiboUser.h │ │ │ │ │ │ ├── WBHttpRequest.h │ │ │ │ │ │ ├── WBSDKBasicButton.h │ │ │ │ │ │ ├── WBSDKCommentButton.h │ │ │ │ │ │ ├── WBSDKRelationshipButton.h │ │ │ │ │ │ ├── WeiboSDK+Statistics.h │ │ │ │ │ │ ├── WeiboSDK.bundle │ │ │ │ │ │ │ ├── images │ │ │ │ │ │ │ │ ├── alert_error_icon@2x.png │ │ │ │ │ │ │ │ ├── alert_success_icon@2x.png │ │ │ │ │ │ │ │ ├── close.png │ │ │ │ │ │ │ │ ├── close@2x.png │ │ │ │ │ │ │ │ ├── common_button_big_blue@2x.png │ │ │ │ │ │ │ │ ├── common_button_big_blue_disable@2x.png │ │ │ │ │ │ │ │ ├── common_button_big_blue_highlighted@2x.png │ │ │ │ │ │ │ │ ├── common_button_white.png │ │ │ │ │ │ │ │ ├── common_button_white@2x.png │ │ │ │ │ │ │ │ ├── common_button_white_highlighted.png │ │ │ │ │ │ │ │ ├── common_button_white_highlighted@2x.png │ │ │ │ │ │ │ │ ├── common_icon_arrow@2x.png │ │ │ │ │ │ │ │ ├── compose_keyboardbutton_background.png │ │ │ │ │ │ │ │ ├── compose_keyboardbutton_background@2x.png │ │ │ │ │ │ │ │ ├── compose_toolbar_background.png │ │ │ │ │ │ │ │ ├── compose_toolbar_background@2x.png │ │ │ │ │ │ │ │ ├── empty_failed.png │ │ │ │ │ │ │ │ ├── empty_failed@2x.png │ │ │ │ │ │ │ │ ├── login_background@2x.png │ │ │ │ │ │ │ │ ├── login_country_background@2x.png │ │ │ │ │ │ │ │ ├── login_country_background_highlighted@2x.png │ │ │ │ │ │ │ │ ├── navigationbar_background.png │ │ │ │ │ │ │ │ ├── navigationbar_background@2x.png │ │ │ │ │ │ │ │ ├── navigationbar_background_os7.png │ │ │ │ │ │ │ │ ├── navigationbar_background_os7@2x.png │ │ │ │ │ │ │ │ ├── progresshud_background@2x.png │ │ │ │ │ │ │ │ ├── sdk_weibo_logo.png │ │ │ │ │ │ │ │ ├── sdk_weibo_logo@2x.png │ │ │ │ │ │ │ │ ├── sdk_weibo_logo@3x.png │ │ │ │ │ │ │ │ ├── timeline_relationship_icon_addattention.png │ │ │ │ │ │ │ │ ├── timeline_relationship_icon_addattention@2x.png │ │ │ │ │ │ │ │ ├── timeline_relationship_icon_addattention@3x.png │ │ │ │ │ │ │ │ ├── timeline_relationship_icon_attention.png │ │ │ │ │ │ │ │ ├── timeline_relationship_icon_attention@2x.png │ │ │ │ │ │ │ │ ├── timeline_relationship_icon_attention@3x.png │ │ │ │ │ │ │ │ ├── verify_code_button@2x.png │ │ │ │ │ │ │ │ ├── verify_code_button@3x.png │ │ │ │ │ │ │ │ ├── verify_code_button_highlighted@2x.png │ │ │ │ │ │ │ │ └── verify_code_button_highlighted@3x.png │ │ │ │ │ │ │ └── others │ │ │ │ │ │ │ │ ├── countryList │ │ │ │ │ │ │ │ └── mfp.cer │ │ │ │ │ │ ├── WeiboSDK.h │ │ │ │ │ │ ├── WeiboUser.h │ │ │ │ │ │ └── libWeiboSDK.a │ │ │ │ │ └── WeChatSDK │ │ │ │ │ │ ├── .DS_Store │ │ │ │ │ │ ├── README.txt │ │ │ │ │ │ ├── WXApi.h │ │ │ │ │ │ ├── WXApiObject.h │ │ │ │ │ │ ├── WechatAuthSDK.h │ │ │ │ │ │ ├── libWeChatSDK.a │ │ │ │ │ │ └── read_me.txt │ │ │ │ │ └── Required │ │ │ │ │ ├── MOBFoundation.framework │ │ │ │ │ ├── .DS_Store │ │ │ │ │ ├── Headers │ │ │ │ │ │ ├── IMOBFPlugin.h │ │ │ │ │ │ ├── MOBFApplication.h │ │ │ │ │ │ ├── MOBFBigInteger.h │ │ │ │ │ │ ├── MOBFColor.h │ │ │ │ │ │ ├── MOBFData.h │ │ │ │ │ │ ├── MOBFDataService.h │ │ │ │ │ │ ├── MOBFDate.h │ │ │ │ │ │ ├── MOBFDebug.h │ │ │ │ │ │ ├── MOBFDevice.h │ │ │ │ │ │ ├── MOBFHttpPostedFile.h │ │ │ │ │ │ ├── MOBFHttpService.h │ │ │ │ │ │ ├── MOBFImage.h │ │ │ │ │ │ ├── MOBFImageGetter.h │ │ │ │ │ │ ├── MOBFImageObserver.h │ │ │ │ │ │ ├── MOBFImageService.h │ │ │ │ │ │ ├── MOBFImageServiceTypeDef.h │ │ │ │ │ │ ├── MOBFJSContext.h │ │ │ │ │ │ ├── MOBFJSTypeDefine.h │ │ │ │ │ │ ├── MOBFJson.h │ │ │ │ │ │ ├── MOBFMedia.h │ │ │ │ │ │ ├── MOBFNetworkFlowInfo.h │ │ │ │ │ │ ├── MOBFNotificationCenter.h │ │ │ │ │ │ ├── MOBFNumber.h │ │ │ │ │ │ ├── MOBFOAuthService.h │ │ │ │ │ │ ├── MOBFPluginManager.h │ │ │ │ │ │ ├── MOBFRSAHelper.h │ │ │ │ │ │ ├── MOBFRSAKey.h │ │ │ │ │ │ ├── MOBFRegex.h │ │ │ │ │ │ ├── MOBFString.h │ │ │ │ │ │ ├── MOBFViewController.h │ │ │ │ │ │ ├── MOBFXml.h │ │ │ │ │ │ ├── MOBFXmlNode.h │ │ │ │ │ │ └── MOBFoundation.h │ │ │ │ │ ├── Info.plist │ │ │ │ │ ├── MOBFoundation │ │ │ │ │ ├── en.lproj │ │ │ │ │ │ └── InfoPlist.strings │ │ │ │ │ └── readme │ │ │ │ │ ├── ShareSDK.bundle │ │ │ │ │ ├── Base.lproj │ │ │ │ │ │ └── ShareSDK.strings │ │ │ │ │ ├── ConfigurationFile │ │ │ │ │ │ ├── Map.plist │ │ │ │ │ │ ├── ShareContent.xml │ │ │ │ │ │ └── ShareSDK.xml │ │ │ │ │ ├── ScriptCore │ │ │ │ │ │ ├── NativeExt.js │ │ │ │ │ │ ├── ShareSDK.js │ │ │ │ │ │ └── platforms │ │ │ │ │ │ │ ├── QQ.js │ │ │ │ │ │ │ ├── SinaWeibo.js │ │ │ │ │ │ │ └── WeChat.js │ │ │ │ │ ├── en.lproj │ │ │ │ │ │ └── ShareSDK.strings │ │ │ │ │ └── zh-Hans.lproj │ │ │ │ │ │ └── ShareSDK.strings │ │ │ │ │ └── ShareSDKConnector.framework │ │ │ │ │ ├── .DS_Store │ │ │ │ │ ├── Headers │ │ │ │ │ └── ShareSDKConnector.h │ │ │ │ │ ├── Info.plist │ │ │ │ │ └── ShareSDKConnector │ │ │ ├── TFHpple │ │ │ │ ├── TFHpple.h │ │ │ │ ├── TFHpple.m │ │ │ │ ├── TFHppleElement.h │ │ │ │ ├── TFHppleElement.m │ │ │ │ ├── XPathQuery.h │ │ │ │ └── XPathQuery.m │ │ │ └── YZPerson │ │ │ │ ├── Category │ │ │ │ ├── UIImage+Image.h │ │ │ │ └── UIImage+Image.m │ │ │ │ ├── YZPersonTableViewController.h │ │ │ │ ├── YZPersonTableViewController.m │ │ │ │ ├── YZPersonViewController.h │ │ │ │ ├── YZPersonViewController.m │ │ │ │ ├── YZPersonViewController.xib │ │ │ │ ├── YZTableView.h │ │ │ │ └── YZTableView.m │ │ ├── Login-登录 │ │ │ ├── Controller │ │ │ │ ├── WTLoginViewController.h │ │ │ │ ├── WTLoginViewController.m │ │ │ │ └── WTLoginViewController.xib │ │ │ ├── Model │ │ │ │ ├── WTAccount.h │ │ │ │ ├── WTAccount.m │ │ │ │ ├── WTLogin2FARequestItem.h │ │ │ │ ├── WTLogin2FARequestItem.m │ │ │ │ ├── WTLoginRequestItem.h │ │ │ │ ├── WTLoginRequestItem.m │ │ │ │ ├── WTMemberAPIItem.h │ │ │ │ ├── WTMemberAPIItem.m │ │ │ │ ├── WTMemberItem.h │ │ │ │ ├── WTMemberItem.m │ │ │ │ ├── WTUserItem.h │ │ │ │ └── WTUserItem.m │ │ │ ├── View │ │ │ │ ├── WTLoginRegisterTextField.h │ │ │ │ └── WTLoginRegisterTextField.m │ │ │ └── ViewModel │ │ │ │ ├── WTAccountViewModel.h │ │ │ │ └── WTAccountViewModel.m │ │ ├── Nav-导航 │ │ │ ├── WTNavigationController.h │ │ │ └── WTNavigationController.m │ │ ├── Register-注册 │ │ │ ├── Controller │ │ │ │ ├── WTRegisterViewController.h │ │ │ │ ├── WTRegisterViewController.m │ │ │ │ └── WTRegisterViewController.xib │ │ │ └── Model │ │ │ │ ├── WTContinueRegisterReqItem.h │ │ │ │ ├── WTContinueRegisterReqItem.m │ │ │ │ ├── WTRegisterReqItem.h │ │ │ │ └── WTRegisterReqItem.m │ │ └── TabBar │ │ │ ├── WTTabBarController.h │ │ │ └── WTTabBarController.m │ ├── Resource │ │ ├── HY-QiHei50.ttf │ │ ├── highlight.js │ │ ├── light.css │ │ ├── nodeitem.sqlite │ │ ├── themes.txt │ │ ├── untitled.html │ │ └── v2ex.js │ └── Tool(工具类) │ │ ├── Http │ │ ├── MisakaNetworkTool.h │ │ ├── MisakaNetworkTool.m │ │ ├── NetworkTool.h │ │ ├── NetworkTool.m │ │ ├── WTNetworkState.h │ │ └── WTNetworkState.m │ │ ├── WTAppDelegateTool.h │ │ ├── WTAppDelegateTool.m │ │ ├── WTCellAnimationTool.h │ │ ├── WTCellAnimationTool.m │ │ ├── WTFPSLabel.h │ │ ├── WTFPSLabel.m │ │ ├── WTHTMLExtension.h │ │ ├── WTHTMLExtension.m │ │ ├── WTParseTool.h │ │ ├── WTParseTool.m │ │ ├── WTPerson │ │ ├── Category │ │ │ ├── UIImage+Image.h │ │ │ └── UIImage+Image.m │ │ ├── WTPersonTableViewController.h │ │ ├── WTPersonTableViewController.m │ │ ├── WTPersonViewController.h │ │ ├── WTPersonViewController.m │ │ ├── WTPersonViewController.xib │ │ ├── WTTableView.h │ │ └── WTTableView.m │ │ ├── WTShareSDKTool.h │ │ └── WTShareSDKTool.m ├── Info.plist ├── MJExtensionConfig.h ├── MJExtensionConfig.m ├── fastclick.js ├── hotNode.plist ├── main.m ├── nodes.plist ├── v2ex.entitlements └── v2ex.pch └── v2exTests ├── Info.plist └── v2exTests.m /.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/.DS_Store -------------------------------------------------------------------------------- /Screenshots/IMG_4533.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/Screenshots/IMG_4533.PNG -------------------------------------------------------------------------------- /Screenshots/IMG_4554.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/Screenshots/IMG_4554.PNG -------------------------------------------------------------------------------- /Screenshots/IMG_5104.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/Screenshots/IMG_5104.PNG -------------------------------------------------------------------------------- /Screenshots/IMG_5105.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/Screenshots/IMG_5105.PNG -------------------------------------------------------------------------------- /Screenshots/IMG_5106.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/Screenshots/IMG_5106.PNG -------------------------------------------------------------------------------- /Today/Today.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.security.application-groups 6 | 7 | group.com.wutouqishi.today 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Today/TodayCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // TodayCell.h 3 | // v2ex 4 | // 5 | // Created by gengjie on 2016/10/14. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | @class WTTopicApiItem; 11 | @interface TodayCell :UITableViewCell 12 | 13 | @property (nonatomic, strong) WTTopicApiItem *topicApiItem; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /Today/TodayViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // TodayViewController.h 3 | // Today 4 | // 5 | // Created by gengjie on 16/10/12. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface TodayViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /v2ex.xcodeproj/project.xcworkspace/xcuserdata/wutouqishigj.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex.xcodeproj/project.xcworkspace/xcuserdata/wutouqishigj.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /v2ex.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /v2ex.xcworkspace/xcuserdata/wutouqishigj.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex.xcworkspace/xcuserdata/wutouqishigj.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /v2ex/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/.DS_Store -------------------------------------------------------------------------------- /v2ex/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/1/13. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/.DS_Store -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/3DTouch/3dTouch_Icon_Add.imageset/3dTouch_Icon_Add@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/3DTouch/3dTouch_Icon_Add.imageset/3dTouch_Icon_Add@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/3DTouch/3dTouch_Icon_Add.imageset/3dTouch_Icon_Add@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/3DTouch/3dTouch_Icon_Add.imageset/3dTouch_Icon_Add@3x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/3DTouch/3dTouch_Icon_Add.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "3dTouch_Icon_Add@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "filename" : "3dTouch_Icon_Add@3x.png", 15 | "scale" : "3x" 16 | } 17 | ], 18 | "info" : { 19 | "version" : 1, 20 | "author" : "xcode" 21 | } 22 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/3DTouch/3dTouch_Icon_Hot.imageset/3dTouch_Icon_Hot@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/3DTouch/3dTouch_Icon_Hot.imageset/3dTouch_Icon_Hot@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/3DTouch/3dTouch_Icon_Hot.imageset/3dTouch_Icon_Hot@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/3DTouch/3dTouch_Icon_Hot.imageset/3dTouch_Icon_Hot@3x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/3DTouch/3dTouch_Icon_Hot.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "3dTouch_Icon_Hot@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "filename" : "3dTouch_Icon_Hot@3x.png", 15 | "scale" : "3x" 16 | } 17 | ], 18 | "info" : { 19 | "version" : 1, 20 | "author" : "xcode" 21 | } 22 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/3DTouch/3dTouch_Icon_Notification.imageset/3dTouch_Icon_Notification@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/3DTouch/3dTouch_Icon_Notification.imageset/3dTouch_Icon_Notification@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/3DTouch/3dTouch_Icon_Notification.imageset/3dTouch_Icon_Notification@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/3DTouch/3dTouch_Icon_Notification.imageset/3dTouch_Icon_Notification@3x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/3DTouch/3dTouch_Icon_Notification.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "3dTouch_Icon_Notification@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "filename" : "3dTouch_Icon_Notification@3x.png", 15 | "scale" : "3x" 16 | } 17 | ], 18 | "info" : { 19 | "version" : 1, 20 | "author" : "xcode" 21 | } 22 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/3DTouch/3dTouch_Icon_Search.imageset/3dTouch_Icon_Search@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/3DTouch/3dTouch_Icon_Search.imageset/3dTouch_Icon_Search@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/3DTouch/3dTouch_Icon_Search.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "3dTouch_Icon_Search@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/3DTouch/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Action/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Action/action_favorite.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "action_favorite@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "filename" : "action_favorite@3x.png", 15 | "scale" : "3x" 16 | } 17 | ], 18 | "info" : { 19 | "version" : 1, 20 | "author" : "xcode" 21 | } 22 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Action/action_favorite.imageset/action_favorite@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Action/action_favorite.imageset/action_favorite@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Action/action_favorite.imageset/action_favorite@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Action/action_favorite.imageset/action_favorite@3x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Action/action_forbidden.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "action_forbidden@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "filename" : "action_forbidden@3x.png", 15 | "scale" : "3x" 16 | } 17 | ], 18 | "info" : { 19 | "version" : 1, 20 | "author" : "xcode" 21 | } 22 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Action/action_forbidden.imageset/action_forbidden@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Action/action_forbidden.imageset/action_forbidden@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Action/action_forbidden.imageset/action_forbidden@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Action/action_forbidden.imageset/action_forbidden@3x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Action/action_safari.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "action_safari@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "filename" : "action_safari@3x.png", 15 | "scale" : "3x" 16 | } 17 | ], 18 | "info" : { 19 | "version" : 1, 20 | "author" : "xcode" 21 | } 22 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Action/action_safari.imageset/action_safari@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Action/action_safari.imageset/action_safari@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Action/action_safari.imageset/action_safari@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Action/action_safari.imageset/action_safari@3x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Action/action_thank.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "action_thank@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "filename" : "action_thank@3x.png", 15 | "scale" : "3x" 16 | } 17 | ], 18 | "info" : { 19 | "version" : 1, 20 | "author" : "xcode" 21 | } 22 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Action/action_thank.imageset/action_thank@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Action/action_thank.imageset/action_thank@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Action/action_thank.imageset/action_thank@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Action/action_thank.imageset/action_thank@3x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/AppIcon.appiconset/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/AppIcon.appiconset/.DS_Store -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/AppIcon.appiconset/1024x1024bb-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/AppIcon.appiconset/1024x1024bb-1.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/AppIcon.appiconset/1024x1024bb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/AppIcon.appiconset/1024x1024bb.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/AppIcon.appiconset/AppIcon-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/AppIcon.appiconset/AppIcon-2.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/AppIcon.appiconset/AppIcon-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/AppIcon.appiconset/AppIcon-3.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/AppIcon.appiconset/AppIcon-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/AppIcon.appiconset/AppIcon-4.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/AppIcon.appiconset/AppIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/AppIcon.appiconset/AppIcon.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Discovery/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Discovery/discovery_loading_run.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "discovery_loading_run.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Discovery/discovery_loading_run.imageset/discovery_loading_run.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Discovery/discovery_loading_run.imageset/discovery_loading_run.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Login/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Login/icon_close.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "icon_close@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "filename" : "icon_close@3x.png", 15 | "scale" : "3x" 16 | } 17 | ], 18 | "info" : { 19 | "version" : 1, 20 | "author" : "xcode" 21 | } 22 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Login/icon_close.imageset/icon_close@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Login/icon_close.imageset/icon_close@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Login/icon_close.imageset/icon_close@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Login/icon_close.imageset/icon_close@3x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Login/login_bg01.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "login_bg.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Login/login_bg01.imageset/login_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Login/login_bg01.imageset/login_bg.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Login/login_bottomarrow.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "login_bottomarrow.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Login/login_bottomarrow.imageset/login_bottomarrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Login/login_bottomarrow.imageset/login_bottomarrow.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Login/login_email.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "login_email@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Login/login_email.imageset/login_email@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Login/login_email.imageset/login_email@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Login/login_password.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "login_password.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Login/login_password.imageset/login_password.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Login/login_password.imageset/login_password.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Login/login_showpwd.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "login_showpwd.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Login/login_showpwd.imageset/login_showpwd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Login/login_showpwd.imageset/login_showpwd.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Login/login_telephone.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "login_telephone@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Login/login_telephone.imageset/login_telephone@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Login/login_telephone.imageset/login_telephone@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Login/login_username.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "login_username.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Login/login_username.imageset/login_username.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Login/login_username.imageset/login_username.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Login/login_verificationCode.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "login_verificationCode@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Login/login_verificationCode.imageset/login_verificationCode@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Login/login_verificationCode.imageset/login_verificationCode@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Me/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Me/register_bg.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "register_bg.jpg", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Me/register_bg.imageset/register_bg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Me/register_bg.imageset/register_bg.jpg -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/.DS_Store -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/ipad_player_setup_arrow.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "ipad_player_setup_arrow.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "ipad_player_setup_arrow@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x" 16 | } 17 | ], 18 | "info" : { 19 | "version" : 1, 20 | "author" : "xcode" 21 | } 22 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/ipad_player_setup_arrow.imageset/ipad_player_setup_arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/ipad_player_setup_arrow.imageset/ipad_player_setup_arrow.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/ipad_player_setup_arrow.imageset/ipad_player_setup_arrow@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/ipad_player_setup_arrow.imageset/ipad_player_setup_arrow@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/mine_favourite.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "mine_favourite@2x~iphone.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "filename" : "mine_favourite@3x~iphone.png", 15 | "scale" : "3x" 16 | } 17 | ], 18 | "info" : { 19 | "version" : 1, 20 | "author" : "xcode" 21 | } 22 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/mine_favourite.imageset/mine_favourite@2x~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/mine_favourite.imageset/mine_favourite@2x~iphone.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/mine_favourite.imageset/mine_favourite@3x~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/mine_favourite.imageset/mine_favourite@3x~iphone.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/mine_follow.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "mine_follow@2x~iphone.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "filename" : "mine_follow@3x~iphone.png", 15 | "scale" : "3x" 16 | } 17 | ], 18 | "info" : { 19 | "version" : 1, 20 | "author" : "xcode" 21 | } 22 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/mine_follow.imageset/mine_follow@2x~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/mine_follow.imageset/mine_follow@2x~iphone.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/mine_follow.imageset/mine_follow@3x~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/mine_follow.imageset/mine_follow@3x~iphone.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/mine_theme.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "mine_theme@2x~iphone.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "filename" : "mine_theme@3x~iphone.png", 15 | "scale" : "3x" 16 | } 17 | ], 18 | "info" : { 19 | "version" : 1, 20 | "author" : "xcode" 21 | } 22 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/mine_theme.imageset/mine_theme@2x~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/mine_theme.imageset/mine_theme@2x~iphone.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/mine_theme.imageset/mine_theme@3x~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/mine_theme.imageset/mine_theme@3x~iphone.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/mine_topic.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "mine_topic.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/mine_topic.imageset/mine_topic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/mine_topic.imageset/mine_topic.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/more_about.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "more_about.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/more_about.imageset/more_about.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/more_about.imageset/more_about.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/more_ad.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "more_ad.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/more_ad.imageset/more_ad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/more_ad.imageset/more_ad.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/more_collection.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "more_collection.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/more_collection.imageset/more_collection.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/more_collection.imageset/more_collection.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/more_group.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "more_group.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/more_group.imageset/more_group.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/more_group.imageset/more_group.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/more_location.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "more_location.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/more_location.imageset/more_location.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/more_location.imageset/more_location.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/more_logout.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "more_logout.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/more_logout.imageset/more_logout.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/more_logout.imageset/more_logout.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/more_pingfen.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "more_pingfen@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/more_pingfen.imageset/more_pingfen@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/more_pingfen.imageset/more_pingfen@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/more_privacystatement.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "scale" : "2x" 10 | }, 11 | { 12 | "idiom" : "universal", 13 | "filename" : "more_privacystatement.png", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/more_privacystatement.imageset/more_privacystatement.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/more_privacystatement.imageset/more_privacystatement.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/more_project.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "more_project.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/more_project.imageset/more_project.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/more_project.imageset/more_project.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/more_systemnoti.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "more_systemnoti.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/more_systemnoti.imageset/more_systemnoti.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/more_systemnoti.imageset/more_systemnoti.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/online.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "online.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/online.imageset/online.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/online.imageset/online.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/social_geo.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "social_geo.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/social_geo.imageset/social_geo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/social_geo.imageset/social_geo.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/social_github.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "social_github.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/social_github.imageset/social_github.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/social_github.imageset/social_github.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/social_home.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "social_home.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/More/social_home.imageset/social_home.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/More/social_home.imageset/social_home.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Nav/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Nav/commodity_nav_share.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "commodity_nav_share@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "filename" : "commodity_nav_share@3x.png", 15 | "scale" : "3x" 16 | } 17 | ], 18 | "info" : { 19 | "version" : 1, 20 | "author" : "xcode" 21 | } 22 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Nav/commodity_nav_share.imageset/commodity_nav_share@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Nav/commodity_nav_share.imageset/commodity_nav_share@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Nav/commodity_nav_share.imageset/commodity_nav_share@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Nav/commodity_nav_share.imageset/commodity_nav_share@3x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Nav/common_back_new.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "common_back_new@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "filename" : "common_back_new@3x.png", 15 | "scale" : "3x" 16 | } 17 | ], 18 | "info" : { 19 | "version" : 1, 20 | "author" : "xcode" 21 | } 22 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Nav/common_back_new.imageset/common_back_new@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Nav/common_back_new.imageset/common_back_new@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Nav/common_back_new.imageset/common_back_new@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Nav/common_back_new.imageset/common_back_new@3x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Nav/nav_close_white_normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "iconfont-guanbi.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | }, 21 | "properties" : { 22 | "template-rendering-intent" : "original" 23 | } 24 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Nav/nav_close_white_normal.imageset/iconfont-guanbi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Nav/nav_close_white_normal.imageset/iconfont-guanbi.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Nav/nav_share_normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "nav_share_normal.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Nav/nav_share_normal.imageset/nav_share_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Nav/nav_share_normal.imageset/nav_share_normal.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Node/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Node/no_topic.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "no_topic.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Node/no_topic.imageset/no_topic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Node/no_topic.imageset/no_topic.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Node/nodeTopicCount.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "nodeTopicCount.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Node/nodeTopicCount.imageset/nodeTopicCount.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Node/nodeTopicCount.imageset/nodeTopicCount.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Node/nodeTopicLike.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "nodeTopicLike.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Node/nodeTopicLike.imageset/nodeTopicLike.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Node/nodeTopicLike.imageset/nodeTopicLike.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Node/node_collected.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "node_collected.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Node/node_collected.imageset/node_collected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Node/node_collected.imageset/node_collected.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Node/node_collection.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "node_collection.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Node/node_collection.imageset/node_collection.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Node/node_collection.imageset/node_collection.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Node/node_large_default.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "node_large_default.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Node/node_large_default.imageset/node_large_default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Node/node_large_default.imageset/node_large_default.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Node/node_not collected.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "node_not collected.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Node/node_not collected.imageset/node_not collected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Node/node_not collected.imageset/node_not collected.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Node/node_time.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "node_time.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Node/node_time.imageset/node_time.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Node/node_time.imageset/node_time.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Node/node_topics.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "node_topics.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Node/node_topics.imageset/node_topics.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Node/node_topics.imageset/node_topics.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Node/time.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "time.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Node/time.imageset/time.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Node/time.imageset/time.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Notification/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/Tabbar_Discover_Normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "Tabbar_Discover_Normal@1x.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "Tabbar_Discover_Normal@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "Tabbar_Discover_Normal@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/Tabbar_Discover_Normal.imageset/Tabbar_Discover_Normal@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/TabBar/Tabbar_Discover_Normal.imageset/Tabbar_Discover_Normal@1x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/Tabbar_Discover_Normal.imageset/Tabbar_Discover_Normal@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/TabBar/Tabbar_Discover_Normal.imageset/Tabbar_Discover_Normal@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/Tabbar_Discover_Normal.imageset/Tabbar_Discover_Normal@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/TabBar/Tabbar_Discover_Normal.imageset/Tabbar_Discover_Normal@3x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/Tabbar_Feed_Normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "Tabbar_Feed_Normal@1x.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "Tabbar_Feed_Normal@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "Tabbar_Feed_Normal@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/Tabbar_Feed_Normal.imageset/Tabbar_Feed_Normal@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/TabBar/Tabbar_Feed_Normal.imageset/Tabbar_Feed_Normal@1x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/Tabbar_Feed_Normal.imageset/Tabbar_Feed_Normal@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/TabBar/Tabbar_Feed_Normal.imageset/Tabbar_Feed_Normal@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/Tabbar_Feed_Normal.imageset/Tabbar_Feed_Normal@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/TabBar/Tabbar_Feed_Normal.imageset/Tabbar_Feed_Normal@3x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/Tabbar_Messages_Normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "Tabbar_Messages_Normal@1x.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "Tabbar_Messages_Normal@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "Tabbar_Messages_Normal@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/Tabbar_Messages_Normal.imageset/Tabbar_Messages_Normal@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/TabBar/Tabbar_Messages_Normal.imageset/Tabbar_Messages_Normal@1x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/Tabbar_Messages_Normal.imageset/Tabbar_Messages_Normal@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/TabBar/Tabbar_Messages_Normal.imageset/Tabbar_Messages_Normal@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/Tabbar_Messages_Normal.imageset/Tabbar_Messages_Normal@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/TabBar/Tabbar_Messages_Normal.imageset/Tabbar_Messages_Normal@3x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/Tabbar_More_Normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "Tabbar_More_Normal@1x.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "Tabbar_More_Normal@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "Tabbar_More_Normal@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/Tabbar_More_Normal.imageset/Tabbar_More_Normal@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/TabBar/Tabbar_More_Normal.imageset/Tabbar_More_Normal@1x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/Tabbar_More_Normal.imageset/Tabbar_More_Normal@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/TabBar/Tabbar_More_Normal.imageset/Tabbar_More_Normal@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/Tabbar_More_Normal.imageset/Tabbar_More_Normal@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/TabBar/Tabbar_More_Normal.imageset/Tabbar_More_Normal@3x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/Tabbar_Notifications_Normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "Tabbar_Notifications_Normal@1x.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "Tabbar_Notifications_Normal@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "Tabbar_Notifications_Normal@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/Tabbar_Notifications_Normal.imageset/Tabbar_Notifications_Normal@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/TabBar/Tabbar_Notifications_Normal.imageset/Tabbar_Notifications_Normal@1x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/Tabbar_Notifications_Normal.imageset/Tabbar_Notifications_Normal@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/TabBar/Tabbar_Notifications_Normal.imageset/Tabbar_Notifications_Normal@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/Tabbar_Notifications_Normal.imageset/Tabbar_Notifications_Normal@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/TabBar/Tabbar_Notifications_Normal.imageset/Tabbar_Notifications_Normal@3x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/arrow.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "arrow.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/arrow.imageset/arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/TabBar/arrow.imageset/arrow.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/tabbar_hot_normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "tabbar_hot_normal@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/TabBar/tabbar_hot_normal.imageset/tabbar_hot_normal@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/TabBar/tabbar_hot_normal.imageset/tabbar_hot_normal@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/collection_normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "collection_normal.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/collection_normal.imageset/collection_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Topic/collection_normal.imageset/collection_normal.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/collection_selected.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "collection_selected.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/collection_selected.imageset/collection_selected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Topic/collection_selected.imageset/collection_selected.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/love_normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "love_normal.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/love_normal.imageset/love_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Topic/love_normal.imageset/love_normal.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/love_selected.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "love_selected.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/love_selected.imageset/love_selected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Topic/love_selected.imageset/love_selected.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/next_normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "next_normal.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/next_normal.imageset/next_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Topic/next_normal.imageset/next_normal.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/prev_normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "prev_normal.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/prev_normal.imageset/prev_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Topic/prev_normal.imageset/prev_normal.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/refresh_normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "refresh_normal.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/refresh_normal.imageset/refresh_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Topic/refresh_normal.imageset/refresh_normal.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/reply_arrow.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "reply_arrow.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/reply_arrow.imageset/reply_arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Topic/reply_arrow.imageset/reply_arrow.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/reply_close_normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "reply_close_normal@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/reply_close_normal.imageset/reply_close_normal@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Topic/reply_close_normal.imageset/reply_close_normal@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/reply_normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "reply_normal.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/reply_normal.imageset/reply_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Topic/reply_normal.imageset/reply_normal.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/reply_photo_normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "reply_photo_normal@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/reply_photo_normal.imageset/reply_photo_normal@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Topic/reply_photo_normal.imageset/reply_photo_normal@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/reply_send_normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "reply_send_normal@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/reply_send_normal.imageset/reply_send_normal@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Topic/reply_send_normal.imageset/reply_send_normal@2x.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/safari_normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "iconfont-safari.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/safari_normal.imageset/iconfont-safari.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Topic/safari_normal.imageset/iconfont-safari.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/tip_success.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "tip_success.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/tip_success.imageset/tip_success.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Topic/tip_success.imageset/tip_success.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/tip_success_normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "tip_success_normal.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/tip_success_normal.imageset/tip_success_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Topic/tip_success_normal.imageset/tip_success_normal.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/topic_delete_normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "topic_delete_normal.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/topic_delete_normal.imageset/topic_delete_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Topic/topic_delete_normal.imageset/topic_delete_normal.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/topic_reply_normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "iconfont-qz-2.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/topic_reply_normal.imageset/iconfont-qz-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Topic/topic_reply_normal.imageset/iconfont-qz-2.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/topic_time_black.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "topic_time_black.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/topic_time_black.imageset/topic_time_black.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Topic/topic_time_black.imageset/topic_time_black.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/topic_time_normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "iconfont-shijian.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/topic_time_normal.imageset/iconfont-shijian.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Topic/topic_time_normal.imageset/iconfont-shijian.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/topic_user_black.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "topic_user_black.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/Topic/topic_user_black.imageset/topic_user_black.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/Topic/topic_user_black.imageset/topic_user_black.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/icon.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "icon.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/icon.imageset/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/icon.imageset/icon.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/launchBG01.imageset/launchBG01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/launchBG01.imageset/launchBG01.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/lol.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "lol.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/lol.imageset/lol.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/lol.imageset/lol.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/member_detail_normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "member_detail_normal.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/member_detail_normal.imageset/member_detail_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/member_detail_normal.imageset/member_detail_normal.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/no_notification.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "no_notification.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/no_notification.imageset/no_notification.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/no_notification.imageset/no_notification.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/share_img.imageset/AppIcon1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/share_img.imageset/AppIcon1.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/share_img.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "AppIcon1.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/timo.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "timo.jpg", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/timo.imageset/timo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/timo.imageset/timo.jpg -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/topic_avatar_normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "topic_avatar_normal.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/topic_avatar_normal.imageset/topic_avatar_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/topic_avatar_normal.imageset/topic_avatar_normal.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/webView_next.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "webView_next.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | }, 21 | "properties" : { 22 | "template-rendering-intent" : "original" 23 | } 24 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/webView_next.imageset/webView_next.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/webView_next.imageset/webView_next.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/webView_next_disabled.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "webView_next_enable.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/webView_next_disabled.imageset/webView_next_enable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/webView_next_disabled.imageset/webView_next_enable.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/webView_refresh.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "iphone", 9 | "filename" : "webView_refresh.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "iphone", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | }, 21 | "properties" : { 22 | "template-rendering-intent" : "original" 23 | } 24 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/webView_refresh.imageset/webView_refresh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/webView_refresh.imageset/webView_refresh.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/webView_refresh_disabled.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "webView_refresh_disabled.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/webView_refresh_disabled.imageset/webView_refresh_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/webView_refresh_disabled.imageset/webView_refresh_disabled.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/webView_return.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "webView_return.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | }, 21 | "properties" : { 22 | "template-rendering-intent" : "original" 23 | } 24 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/webView_return.imageset/webView_return.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/webView_return.imageset/webView_return.png -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/webView_return_disabled.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "webView_return_enable.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /v2ex/Assets.xcassets/webView_return_disabled.imageset/webView_return_enable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Assets.xcassets/webView_return_disabled.imageset/webView_return_enable.png -------------------------------------------------------------------------------- /v2ex/Classes/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/Discovery-发现/Hot-最热/Controller/WTHotTopicViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTDiscoveryViewController.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 2017/7/7. 6 | // Copyright © 2017年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTHotTopicViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/Discovery-发现/Hot-最热/Model/WTSearchTopicRsp.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTSearchTopicRsp.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 2017/7/9. 6 | // Copyright © 2017年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "WTSearchTopic.h" 11 | @interface WTSearchTopicRsp : NSObject 12 | 13 | @property (nonatomic, strong) NSMutableArray *items; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /v2ex/Classes/Discovery-发现/Hot-最热/Model/WTSearchTopicRsp.m: -------------------------------------------------------------------------------- 1 | // 2 | // WTSearchTopicRsp.m 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 2017/7/9. 6 | // Copyright © 2017年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTSearchTopicRsp.h" 10 | 11 | #import "MJExtension.h" 12 | 13 | @implementation WTSearchTopicRsp 14 | 15 | - (NSString *)description 16 | { 17 | return [NSString stringWithFormat: @"items:%@", self.items]; 18 | } 19 | 20 | + (NSDictionary *)mj_objectClassInArray 21 | { 22 | return @{@"items" : NSStringFromClass([WTSearchTopic class])}; 23 | } 24 | @end 25 | -------------------------------------------------------------------------------- /v2ex/Classes/Discovery-发现/Hot-最热/View/WTSearchTopicCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTSearchTopicCell.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 2017/7/9. 6 | // Copyright © 2017年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | @class WTSearchTopic; 11 | @interface WTSearchTopicCell : UITableViewCell 12 | 13 | @property (nonatomic, strong) NSString *keywords; 14 | 15 | @property (nonatomic, strong) WTSearchTopic *searchTopic; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /v2ex/Classes/Discovery-发现/Hot-最热/ViewModel/WTHotTopicViewModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTHotTopicViewModel.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 2017/7/9. 6 | // Copyright © 2017年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "WTSearchTopicReq.h" 11 | #import "WTSearchTopic.h" 12 | 13 | @interface WTHotTopicViewModel : NSObject 14 | 15 | 16 | /** 17 | 搜索帖子 18 | 19 | @param searchTopicReq 请求参数 20 | @param success 请求成功的回调 21 | @param failure 请求失败的回调 22 | */ 23 | + (void)searchTopicWithSearchTopicReq:(WTSearchTopicReq *)searchTopicReq success:(void(^)(NSMutableArray *searchTopics))success failure:(void(^)(NSError *error))failure; 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /v2ex/Classes/Discovery-发现/Hot-最热/ViewModel/WTSearchTopicReq.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTSearchTopicReq.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 2017/7/9. 6 | // Copyright © 2017年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTSearchTopicReq : NSObject 12 | 13 | @property (nonatomic, strong) NSString *keywords; 14 | 15 | @property (nonatomic, assign) NSUInteger currentPage; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /v2ex/Classes/Discovery-发现/Hot-最热/ViewModel/WTSearchTopicReq.m: -------------------------------------------------------------------------------- 1 | // 2 | // WTSearchTopicReq.m 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 2017/7/9. 6 | // Copyright © 2017年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTSearchTopicReq.h" 10 | 11 | @implementation WTSearchTopicReq 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/Home-首页/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Home-首页/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/Home-首页/Home-首页/Controller/WTHomeViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // LBBHomeViewController.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/1/14. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTWYViewController.h" 10 | 11 | @interface WTHomeViewController : WTWYViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/Home-首页/Home-首页/Controller/WTTopicViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTBlogViewController.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/1/14. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTBaseTableViewController.h" 10 | 11 | @class WTNode; 12 | @interface WTTopicViewController : WTBaseTableViewController 13 | /** url地址 */ 14 | @property (nonatomic, strong) NSString *urlString; 15 | 16 | /** 加载最新的数据 */ 17 | - (void)loadNewData; 18 | @end 19 | -------------------------------------------------------------------------------- /v2ex/Classes/Home-首页/Home-首页/Controller/WTWYViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTWYViewController.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/1/30. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "WTTopicViewController.h" 11 | #import "WTNode.h" 12 | @interface WTWYViewController : UIViewController 13 | /** 14 | 刷新当前选中的VC的数据 15 | */ 16 | - (void)reloadSelectedVCData; 17 | @end 18 | -------------------------------------------------------------------------------- /v2ex/Classes/Home-首页/Home-首页/Model/WTNode.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTNode.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/1/15. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTNode : NSObject 12 | 13 | /** 名称 */ 14 | @property (nonatomic, strong) NSString *name; 15 | /** 地址 */ 16 | @property (nonatomic, strong) NSString *nodeURL; 17 | @end 18 | -------------------------------------------------------------------------------- /v2ex/Classes/Home-首页/Home-首页/Model/WTNode.m: -------------------------------------------------------------------------------- 1 | // 2 | // WTNode.m 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/1/15. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTNode.h" 10 | 11 | @implementation WTNode 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/Home-首页/Home-首页/Model/WTNodeApiItem.m: -------------------------------------------------------------------------------- 1 | // 2 | // WTNodeApiItem.m 3 | // v2ex 4 | // 5 | // Created by gengjie on 16/10/13. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTNodeApiItem.h" 10 | 11 | @implementation WTNodeApiItem 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/Home-首页/Home-首页/Model/WTTopic.m: -------------------------------------------------------------------------------- 1 | // 2 | // WTTopicNew.m 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/3/12. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTTopic.h" 10 | 11 | @implementation WTTopic 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/Home-首页/Home-首页/Model/WTTopicApiItem.m: -------------------------------------------------------------------------------- 1 | // 2 | // WTTopicApiItem.m 3 | // v2ex 4 | // 5 | // Created by gengjie on 16/10/13. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTTopicApiItem.h" 10 | 11 | @implementation WTTopicApiItem 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/Home-首页/Home-首页/View/WTTipView.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTTipView.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/2/23. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTTipView : UIView 12 | /** 提示标题 */ 13 | @property (nonatomic, strong) NSString *tipTitle; 14 | 15 | 16 | /** 17 | * 显示tipView 18 | * 19 | * @param title 提示框文字 20 | */ 21 | - (void)showTipViewWithTitle:(NSString *)title; 22 | 23 | /** 24 | * 显示错误信息 25 | * 26 | * @param title 信息 27 | */ 28 | - (void)showErrorTitle:(NSString *)title; 29 | 30 | /** 31 | * 显示成功的信息 32 | * 33 | * @param title 信息 34 | */ 35 | - (void)showSuccessTitle:(NSString *)title; 36 | @end 37 | -------------------------------------------------------------------------------- /v2ex/Classes/Home-首页/HotTopic-热门节点/Controller/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Home-首页/HotTopic-热门节点/Controller/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/Home-首页/HotTopic-热门节点/Model/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Home-首页/HotTopic-热门节点/Model/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/Home-首页/HotTopic-热门节点/View/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Home-首页/HotTopic-热门节点/View/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/Home-首页/HotTopic-热门节点/ViewModel/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Home-首页/HotTopic-热门节点/ViewModel/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/Home-首页/MemberDetail-会员详情/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Home-首页/MemberDetail-会员详情/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/Home-首页/MemberDetail-会员详情/Controller/WTMemberDetailViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTMemberDetailViewController.h 3 | // v2ex 4 | // 5 | // Created by gengjie on 16/8/23. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "YZPersonViewController.h" 10 | @class WTTopicDetailViewModel, WTTopic; 11 | @interface WTMemberDetailViewController : YZPersonViewController 12 | 13 | 14 | - (instancetype)initWithtopicDetailVM:(WTTopicDetailViewModel *)topicDetailVM; 15 | 16 | - (instancetype)initWithTopic:(WTTopic *)topic; 17 | 18 | - (instancetype)initWithUsername:(NSString *)username; 19 | @end 20 | -------------------------------------------------------------------------------- /v2ex/Classes/Home-首页/MemberDetail-会员详情/Controller/WTMemberInfoTableViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTMemberInfoTableViewController.h 3 | // v2ex 4 | // 5 | // Created by gengjie on 2016/10/21. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | @class WTMemberItem, WTUserItem; 11 | @interface WTMemberInfoTableViewController : UITableViewController 12 | /** 13 | 快速创建的类方法 14 | 15 | @param memberItem v2ex用户信息 16 | @param userItem misaka14用户信息 17 | 18 | @return WTTMemberInfoViewController 19 | */ 20 | - (instancetype)initWithMemberItem:(WTMemberItem *)memberItem userItem:(WTUserItem *)userItem; 21 | @end 22 | -------------------------------------------------------------------------------- /v2ex/Classes/Home-首页/MemberDetail-会员详情/Controller/WTMemberInfoViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTTMemberInfoViewController.h 3 | // v2ex 4 | // 5 | // Created by gengjie on 2016/10/21. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | @class WTMemberItem, WTUserItem; 11 | @interface WTMemberInfoViewController : UIViewController 12 | 13 | 14 | + (instancetype)memberInfoVC; 15 | /** 16 | 快速创建的类方法 17 | 18 | @param memberItem v2ex用户信息 19 | @param userItem misaka14用户信息 20 | 21 | @return WTTMemberInfoViewController 22 | */ 23 | - (instancetype)initWithMemberItem:(WTMemberItem *)memberItem userItem:(WTUserItem *)userItem; 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /v2ex/Classes/Home-首页/MemberDetail-会员详情/Controller/WTMemberReplyViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTMemberReplyViewController.h 3 | // v2ex 4 | // 5 | // Created by gengjie on 16/8/24. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "YZPersonTableViewController.h" 10 | 11 | @interface WTMemberReplyViewController : YZPersonTableViewController 12 | 13 | @property (nonatomic, strong) NSString *author; 14 | 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /v2ex/Classes/Home-首页/MemberDetail-会员详情/Controller/WTMemberTopicViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTMemberTopicViewController.h 3 | // v2ex 4 | // 5 | // Created by gengjie on 16/8/24. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "YZPersonTableViewController.h" 10 | 11 | @interface WTMemberTopicViewController : YZPersonTableViewController 12 | 13 | @property (nonatomic, strong) NSString *author; 14 | 15 | @property (nonatomic, strong) NSURL *iconURL; 16 | 17 | 18 | /** 19 | 刷新头像 20 | */ 21 | - (void)reloadAvatar; 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /v2ex/Classes/Home-首页/Search-搜索/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Home-首页/Search-搜索/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/Home-首页/TopicDetail-话题详情/Model/WTTopicDetail.m: -------------------------------------------------------------------------------- 1 | // 2 | // WTTopicDetailNew.m 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/3/12. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTTopicDetail.h" 10 | 11 | @implementation WTTopicDetail 12 | 13 | - (NSString *)description 14 | { 15 | return [NSString stringWithFormat: @"icon:%@, author:%@, createTime:%@, floor:%@", self.icon, self.author, self.createTime, self.floor]; 16 | } 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /v2ex/Classes/Main/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Main/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/Main/Controller/PhotoBrowserViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // PhotoBrowserViewController.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/3/8. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface PhotoBrowserViewController : UIViewController 12 | /** 图片数组 */ 13 | @property (nonatomic, strong) NSArray *imageUrls; 14 | /** 当前点击图片URL */ 15 | @property (nonatomic, strong) NSURL *clickImageUrl; 16 | @end 17 | -------------------------------------------------------------------------------- /v2ex/Classes/Main/Controller/WTBaseSlidingViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTBaseSlidingViewController.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/28. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | 12 | @interface WTBaseSlidingViewController : UIViewController 13 | 14 | @property (nonatomic, weak) UIView *headerContentView; 15 | @property (nonatomic, weak) UIView *footerContentView; 16 | @property (nonatomic, assign) CGFloat headerViewH; 17 | 18 | @property (nonatomic, assign, getter=isShowTabBarFlag) BOOL showTabBarFlag; 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /v2ex/Classes/Main/Controller/WTBaseTableViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTBaseTableViewController.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/2/26. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "WTRefreshAutoNormalFooter.h" 11 | #import "WTRefreshNormalHeader.h" 12 | @interface WTBaseTableViewController : UITableViewController 13 | 14 | @property (nonatomic, assign) WTTableViewType tableViewType; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /v2ex/Classes/Main/Controller/WTWebViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTWebViewController.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/3/15. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTWebViewController : UIViewController 12 | 13 | @property (nonatomic, strong) NSURL *url; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /v2ex/Classes/Main/View/PhotoBrowserCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // PhotoBrowserCell.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/3/8. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface PhotoBrowserCell : UICollectionViewCell 12 | /** 图片的url */ 13 | @property (nonatomic, strong) NSURL *imageUrl; 14 | 15 | @property (nonatomic, weak) UIImageView *imageView; 16 | @end 17 | -------------------------------------------------------------------------------- /v2ex/Classes/Main/View/WTNoDataView.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTNoDataView.h 3 | // v2ex 4 | // 5 | // Created by gengjie on 16/8/25. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTNoDataView : UIView 12 | 13 | @property (weak, nonatomic) IBOutlet UIImageView *tipImageView; 14 | @property (weak, nonatomic) IBOutlet UILabel *tipTitleLabel; 15 | 16 | + (instancetype)noDataView; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /v2ex/Classes/Main/View/WTNoDataView.m: -------------------------------------------------------------------------------- 1 | // 2 | // WTNoDataView.m 3 | // v2ex 4 | // 5 | // Created by gengjie on 16/8/25. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTNoDataView.h" 10 | 11 | @implementation WTNoDataView 12 | 13 | + (instancetype)noDataView 14 | { 15 | return [[NSBundle mainBundle] loadNibNamed: NSStringFromClass([WTNoDataView class]) owner: nil options: nil].lastObject; 16 | } 17 | 18 | - (void)awakeFromNib 19 | { 20 | [super awakeFromNib]; 21 | self.backgroundColor = [UIColor redColor]; 22 | self.tipTitleLabel.textColor = WTColor(219, 218, 232); 23 | } 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /v2ex/Classes/Main/View/WTNoLoginView.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTNoLoginView.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 2017/4/22. 6 | // Copyright © 2017年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTNoLoginView : UIView 12 | /** 登陆成功的回调 */ 13 | @property (nonatomic, copy) void (^loginSuccessBlock)(); 14 | /** 标题 */ 15 | @property (nonatomic, strong) NSString *title; 16 | @end 17 | -------------------------------------------------------------------------------- /v2ex/Classes/Main/View/WTProgressHUD.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTProgressHUD.h 3 | // v2ex 4 | // 5 | // Created by gengjie on 2016/10/24. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTProgressHUD : JGProgressHUD 12 | 13 | + (instancetype)shareProgressHUD; 14 | 15 | - (void)errorWithMessage:(NSString *)message; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /v2ex/Classes/Main/View/WTRefreshAutoNormalFooter.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTRefreshAutoNormalFooter.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/2/18. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTRefreshAutoNormalFooter : MJRefreshBackNormalFooter 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/Main/View/WTRefreshAutoNormalFooter.m: -------------------------------------------------------------------------------- 1 | // 2 | // WTRefreshAutoNormalFooter.m 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/2/18. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTRefreshAutoNormalFooter.h" 10 | 11 | @implementation WTRefreshAutoNormalFooter 12 | 13 | - (void)prepare 14 | { 15 | [super prepare]; 16 | 17 | // 自动透明度 18 | // self.automaticallyChangeAlpha = YES; 19 | 20 | } 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /v2ex/Classes/Main/View/WTRefreshNormalHeader.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTRefreshNormalHeader.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/2/18. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTRefreshNormalHeader : MJRefreshNormalHeader 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/Main/View/WTRefreshNormalHeader.m: -------------------------------------------------------------------------------- 1 | // 2 | // WTRefreshNormalHeader.m 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/2/18. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTRefreshNormalHeader.h" 10 | 11 | @implementation WTRefreshNormalHeader 12 | 13 | - (void)prepare 14 | { 15 | [super prepare]; 16 | 17 | // 自动透明度 18 | self.automaticallyChangeAlpha = YES; 19 | // 隐藏最后更新时间 20 | self.lastUpdatedTimeLabel.hidden = YES; 21 | } 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /v2ex/Classes/Main/View/WTRefreshView.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTRefreshView.h 3 | // v2ex 4 | // 5 | // Created by gengjie on 16/8/26. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTRefreshView : UIView 12 | 13 | @property (nonatomic, strong) NSString *tipText; 14 | 15 | + (instancetype)refreshView; 16 | 17 | - (void)startAnim; 18 | 19 | - (void)stopAnim; 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/More-更多/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/More-更多/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/More-更多/More-更多/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/More-更多/Controller/WTMoreViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTMoreViewController.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/25. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTMoreViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/More-更多/View/WTMoreButton.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTMoreButton.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/27. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | /** 按钮的宽度 */ 11 | UIKIT_EXTERN CGFloat const WTMoreButtonH; 12 | 13 | #define WTMoreButtonW WTScreenWidth / 4 14 | 15 | @interface WTMoreButton : UIButton 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/More-更多/View/WTMoreCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTMoreCell.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/25. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | @class WTSettingItem; 11 | @interface WTMoreCell : UITableViewCell 12 | 13 | @property (nonatomic, strong) NSString *title; 14 | 15 | @property (nonatomic, strong) NSArray *settingItems; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/More-更多/View/WTMoreLoginHeaderView.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTMoreLoginHeaderView.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/27. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | @class WTAccount; 11 | @interface WTMoreLoginHeaderView : UIView 12 | 13 | @property (nonatomic, strong) WTAccount *account; 14 | 15 | + (instancetype)moreLoginHeaderView; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/MyFollowing-我的关注/Controller/WTMyFollowingViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTMyFollowingViewController.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/8/9. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTMyFollowingViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/MyFollowing-我的关注/Model/WTMyFollowingItem.m: -------------------------------------------------------------------------------- 1 | // 2 | // WTMyFollowingItem.m 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/8/9. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTMyFollowingItem.h" 10 | 11 | @implementation WTMyFollowingItem 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/MyFollowing-我的关注/View/WTMyFollowingCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTMyFollowingCell.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/8/9. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | @class WTMyFollowingItem; 11 | @interface WTMyFollowingCell : UITableViewCell 12 | @property (nonatomic, strong) WTMyFollowingItem *myFollowingItem; 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/MyReply-我的回复/Controller/WTMyReplyViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTMyReplyViewController.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/8/2. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTMyReplyViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/MyReply-我的回复/Model/WTReplyItem.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTReplyItem.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/8/2. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTReplyItem : NSObject 12 | 13 | /** 回复时间 */ 14 | @property (nonatomic, strong) NSString *replyTime; 15 | /** 作者 */ 16 | @property (nonatomic, strong) NSString *author; 17 | /** 头像URL */ 18 | @property (nonatomic, strong) NSURL *avatarURL; 19 | /** 标题 */ 20 | @property (nonatomic, strong) NSString *title; 21 | /** 回复内容 */ 22 | @property (nonatomic, strong) NSString *replyContent; 23 | /** 详情 */ 24 | @property (nonatomic, strong) NSString *detailUrl; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/MyReply-我的回复/Model/WTReplyItem.m: -------------------------------------------------------------------------------- 1 | // 2 | // WTReplyItem.m 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/8/2. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTReplyItem.h" 10 | 11 | @implementation WTReplyItem 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/MyReply-我的回复/View/WTReplyCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTReplyCell.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/8/2. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class WTReplyItem; 12 | @interface WTReplyCell : UITableViewCell 13 | 14 | @property (nonatomic, strong) WTReplyItem *replyItem; /** 我的回复模型 */ 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/MyTopic-我的话题/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/More-更多/MyTopic-我的话题/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/MyTopic-我的话题/Controller/WTMyTopicViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTMyTopicViewController.h 3 | // v2ex 4 | // 5 | // Created by gengjie on 16/8/29. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTMyTopicViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/NodeCollection-节点收藏/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/More-更多/NodeCollection-节点收藏/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/NodeCollection-节点收藏/Controller/WTNodeCollectionViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTNodeCollectionViewController.h 3 | // v2ex 4 | // 5 | // Created by gengjie on 16/8/22. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTNodeCollectionViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/NodeCollection-节点收藏/View/WTNodeCollectionCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTNodeCollectionCell.h 3 | // v2ex 4 | // 5 | // Created by gengjie on 16/8/22. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class WTNodeItem; 12 | @interface WTNodeCollectionCell : UICollectionViewCell 13 | 14 | @property (nonatomic, strong) WTNodeItem *nodeItem; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/PrivacyStatement-隐私声明/Advertise-广告/Controller/WTAdvertiseViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTAdvertiseViewController.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/25. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTAdvertiseViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/PrivacyStatement-隐私声明/Advertise-广告/Model/WTAdvertiseItem.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTAdvertiseItem.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/25. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTAdvertiseItem : NSObject 12 | 13 | @property (nonatomic, strong) NSURL *icon; 14 | 15 | @property (nonatomic, strong) NSString *title; 16 | 17 | @property (nonatomic, strong) NSString *content; 18 | 19 | @property (nonatomic, strong) NSURL *detailUrl; 20 | 21 | + (instancetype)advertiseItem:(NSURL *)icon title:(NSString *)title content:(NSString *)content detailUrl:(NSURL *)detailUrl; 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/PrivacyStatement-隐私声明/Advertise-广告/View/WTAdvertiseCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTAdvertiseCell.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/25. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "WTAdvertiseItem.h" 11 | @interface WTAdvertiseCell : UITableViewCell 12 | 13 | @property (nonatomic, strong) WTAdvertiseItem *advertiseItem; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/PrivacyStatement-隐私声明/Advertise-广告/ViewModel/WTAdvertiseViewModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTAdvertiseViewModel.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/25. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "WTAdvertiseItem.h" 11 | @interface WTAdvertiseViewModel : NSObject 12 | 13 | /** 14 | * 从网络中加载广告 15 | * 16 | * @param success 请求成功的回调 17 | * @param failure 请求失败的回调 18 | */ 19 | + (void)loadAdvertiseItemsFromNetworkWithSuccess:(void(^)(NSMutableArray *advertiseItems))success failure:(void(^)(NSError *error))failure; 20 | 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/PrivacyStatement-隐私声明/Controller/WTPrivacyStatementViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTPrivacyStatementViewController.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/3/10. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTPrivacyStatementViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/TopicCollection-话题收藏/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/More-更多/TopicCollection-话题收藏/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/TopicCollection-话题收藏/Controller/WTTopicCollectionViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTTopicCollectionViewController.h 3 | // v2ex 4 | // 5 | // Created by gengjie on 16/8/22. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTTopicCollectionViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/TopicCollection-话题收藏/Model/WTTopicCollectionItem.m: -------------------------------------------------------------------------------- 1 | // 2 | // WTTopicCollectionItem.m 3 | // v2ex 4 | // 5 | // Created by gengjie on 16/8/22. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTTopicCollectionItem.h" 10 | 11 | @implementation WTTopicCollectionItem 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/More-更多/TopicCollection-话题收藏/View/WTTopicCollectionCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTTopicCollectionCell.h 3 | // v2ex 4 | // 5 | // Created by gengjie on 16/8/22. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | @class WTTopicCollectionItem; 11 | @interface WTTopicCollectionCell : UITableViewCell 12 | 13 | @property (nonatomic, strong) WTTopicCollectionItem *topicCollectionItem; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /v2ex/Classes/Node-节点/Node-节点/Controller/WTAllNodeViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTAllNodeViewController.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/22. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTAllNodeViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/Node-节点/Node-节点/Controller/WTHotNodeFlowLayout.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTHotNodeFlowLayout.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/22. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | UIKIT_EXTERN const CGFloat WTHotNodeSectionLeft; 12 | 13 | UIKIT_EXTERN const CGFloat WTHotNodeCellSpacing; 14 | 15 | UIKIT_EXTERN const CGFloat WTHotNodeMinimumInteritemSpacing; 16 | 17 | @interface WTHotNodeFlowLayout : UICollectionViewFlowLayout 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /v2ex/Classes/Node-节点/Node-节点/Controller/WTHotNodeViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTHotNodeViewController.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/21. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTHotNodeViewController : UICollectionViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/Node-节点/Node-节点/Controller/WTNodeViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTNodeViewController.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/21. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTNodeViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/Node-节点/Node-节点/View/WTHotNodeCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTHotNodeCell.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/21. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | @class WTNodeItem; 11 | 12 | @interface WTHotNodeCell : UICollectionViewCell 13 | 14 | @property (nonatomic, strong) WTNodeItem *nodeItem; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /v2ex/Classes/Node-节点/Node-节点/View/WTHotNodeReusableView.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTHotNodeReusableView.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/21. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTHotNodeReusableView : UICollectionReusableView 12 | 13 | @property (nonatomic, strong) NSString *title; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /v2ex/Classes/Node-节点/NodeTopic-节点话题/Controller/WTNodeTopicViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTNodeTopicViewController.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/22. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTBaseSlidingViewController.h" 10 | 11 | @class WTNodeItem; 12 | @interface WTNodeTopicViewController : WTBaseSlidingViewController 13 | 14 | @property (nonatomic, strong) WTNodeItem *nodeItem; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /v2ex/Classes/Node-节点/NodeTopic-节点话题/Model/WTNodeTopicAPIItem.m: -------------------------------------------------------------------------------- 1 | // 2 | // WTNodeTopicAPIItem.m 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/23. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTNodeTopicAPIItem.h" 10 | #import "MJExtension.h" 11 | @implementation WTNodeTopicAPIItem 12 | 13 | + (NSDictionary *)mj_replacedKeyFromPropertyName 14 | { 15 | return @{@"uid" : @"id"}; 16 | } 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /v2ex/Classes/Node-节点/NodeTopic-节点话题/View/WTNodeTopicCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTNodeTopicCell.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/22. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class WTNodeTopicAPIItem, WTNodeTopicCell; 12 | 13 | 14 | @interface WTNodeTopicCell : UITableViewCell 15 | 16 | /** 节点话题 */ 17 | @property (nonatomic, strong) WTNodeTopicAPIItem *nodeTopicAPIItem; 18 | 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /v2ex/Classes/Node-节点/NodeTopic-节点话题/View/WTNodeTopicHeaderView.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTNodeTopicHeaderView.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/23. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | @class WTNodeItem; 11 | @interface WTNodeTopicHeaderView : UIView 12 | 13 | @property (nonatomic, strong) WTNodeItem *nodeItem; 14 | 15 | + (instancetype)nodeTopicHeaderView; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /v2ex/Classes/Notification-通知/Controller/WTUserNotificationViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTUserNotificationViewController.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/25. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | 12 | 13 | @interface WTUserNotificationViewController : UIViewController 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /v2ex/Classes/Notification-通知/Model/WTNotificationItem.m: -------------------------------------------------------------------------------- 1 | // 2 | // WTNotificationItem.m 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/8/1. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTNotificationItem.h" 10 | 11 | @implementation WTNotificationItem 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/Notification-通知/View/WTNotificationCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTNotificationCell.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/2/26. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | @class WTNotificationItem,WTNotificationCell; 11 | 12 | @protocol WTNotificationCellDelegate 13 | 14 | - (void)notificationCell:(WTNotificationCell *)notificationCell didClickWithNoticationItem:(WTNotificationItem *)noticationItem; 15 | 16 | @end 17 | 18 | @interface WTNotificationCell : UITableViewCell 19 | 20 | @property (nonatomic, weak) id delegate; 21 | /** 回复消息模型 */ 22 | @property (nonatomic, strong) WTNotificationItem *noticationItem; 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/Other/Category/NSString+Extension.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSString+Extension.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/22. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSString (Extension) 12 | 13 | /** 14 | * 汉字转拼音 15 | * 16 | * @param chinese 中文字符串 17 | * 18 | * @return 拼音 19 | */ 20 | +(NSString *)lowercaseSpellingWithChineseCharacters:(NSString *)chinese; 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Category/UIButton+Extension.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIButton+Extension.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/3/8. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIButton (Extension) 12 | /** 13 | * 创建一个按钮 14 | * 15 | * @param color 背景颜色 16 | * @param target 调用者 17 | * @param action 调用方法 18 | * @param title 标题 19 | * 20 | * @return 按钮 21 | */ 22 | + (instancetype)buttonWithBackgroundColor:(UIColor *)color addTarget:(id)target action:(SEL)action title:(NSString *)title; 23 | @end 24 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Category/UIColor+Extension.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIColor+Extension.h 3 | // 驴宝宝 4 | // 5 | // Created by 无头骑士 GJ on 15/8/8. 6 | // Copyright (c) 2015年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIColor (Extension) 12 | 13 | + (UIColor *)colorWithHexString:(NSString *)color; 14 | 15 | //从十六进制字符串获取颜色, 16 | //color:支持@“#123456”、 @“0X123456”、 @“123456”三种格式 17 | + (UIColor *)colorWithHexString:(NSString *)color alpha:(CGFloat)alpha; 18 | 19 | /** 20 | * @brief 根据颜色生成纯色图片 21 | * 22 | * @param color 颜色 23 | * 24 | * @return 纯色图片 25 | */ 26 | + (UIImage *)imageWithColor:(UIColor *)color; 27 | @end 28 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Category/UIFont+Extension.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIFont+Extension.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/21. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIFont (Extension) 12 | 13 | + (instancetype)QiHeiforSize:(CGFloat)size; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Category/UIFont+Extension.m: -------------------------------------------------------------------------------- 1 | // 2 | // UIFont+Extension.m 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/21. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "UIFont+Extension.h" 10 | 11 | @implementation UIFont (Extension) 12 | 13 | + (instancetype)QiHeiforSize:(CGFloat)size 14 | { 15 | return [UIFont fontWithName: @"HYQiHei-EZJ" size: size]; 16 | } 17 | @end 18 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Category/UILabel+StringFrame.h: -------------------------------------------------------------------------------- 1 | // 2 | // UILabel+StringFrame.h 3 | // LQEachonline 4 | // 5 | // Created by heji on 15/7/31. 6 | // Copyright (c) 2015年 luyongan. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UILabel (StringFrame) 12 | 13 | - (CGSize)boundingRectWithSize:(CGSize)size; 14 | 15 | /** 16 | * 根据label内容长度的多少,设置label字体大小 17 | */ 18 | -(void) adjustFontSizeToFillItsContents; 19 | @end 20 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Category/UITableView+Extension.h: -------------------------------------------------------------------------------- 1 | // 2 | // UITableView+Extension.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 2017/9/20. 6 | // Copyright © 2017年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UITableView (Extension) 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Category/UITableViewController+Extension.h: -------------------------------------------------------------------------------- 1 | // 2 | // UITableViewController+Extension.h 3 | // v2ex 4 | // 5 | // Created by gengjie on 2016/10/21. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UITableViewController (Extension) 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Category/UITextField+Placeholder.h: -------------------------------------------------------------------------------- 1 | // 2 | // UITextField+Placeholder.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/3/10. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UITextField (Placeholder) 12 | 13 | /** 占位文字颜色 */ 14 | @property UIColor *placeholderColor; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Category/UITextView+Placeholder.h: -------------------------------------------------------------------------------- 1 | // 2 | // WanQuan-iOS 3 | // 4 | // Created by 郭杭 on 16/12/31. 5 | // Copyright © 2016年 gh. All rights reserved. 6 | // 7 | 8 | FOUNDATION_EXPORT double UITextView_PlaceholderVersionNumber; 9 | FOUNDATION_EXPORT const unsigned char UITextView_PlaceholderVersionString[]; 10 | 11 | @interface UITextView (Placeholder) 12 | 13 | @property (nonatomic, readonly) UILabel *placeholderLabel; 14 | 15 | @property (nonatomic, strong) IBInspectable NSString *placeholder; 16 | @property (nonatomic, strong) NSAttributedString *attributedPlaceholder; 17 | @property (nonatomic, strong) IBInspectable UIColor *placeholderColor; 18 | 19 | + (UIColor *)defaultPlaceholderColor; 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Category/UIView+Frame.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+Frame.h 3 | // SXDownLoader 4 | // 5 | // Created by 董尚先 on 15/1/2. 6 | // Copyright (c) 2015年 shangxianDante. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIView (Frame) 12 | 13 | // 自己模仿frame写出他的四个属性 14 | @property (nonatomic, assign) CGFloat x; 15 | @property (nonatomic, assign) CGFloat y; 16 | @property (nonatomic, assign) CGFloat width; 17 | @property (nonatomic, assign) CGFloat height; 18 | @property (nonatomic, assign) CGFloat centerX; 19 | @property (nonatomic, assign) CGFloat centerY; 20 | 21 | - (BOOL)wt_intersectWithView:(UIView *)view; 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Category/UIView+init.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+init.h 3 | // BaiDeJie 4 | // 5 | // Created by 无头骑士 GJ on 16/2/18. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIView (init) 12 | 13 | /** 14 | * 快速创建的类方法 15 | * 16 | */ 17 | + (instancetype)wt_viewFromXib; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Category/UIView+init.m: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+init.m 3 | // BaiDeJie 4 | // 5 | // Created by 无头骑士 GJ on 16/2/18. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "UIView+init.h" 10 | 11 | @implementation UIView (init) 12 | /** 13 | * 快速创建的类方法 14 | * 15 | */ 16 | + (instancetype)wt_viewFromXib 17 | { 18 | return [[NSBundle mainBundle] loadNibNamed: NSStringFromClass(self) owner: nil options: nil].firstObject; 19 | } 20 | @end 21 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/MMMarkdown/MMMarkdown-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'MMMarkdown' target in the 'MMMarkdown' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/ShareSDK.framework/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/ShareSDK.framework/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/ShareSDK.framework/Headers/ISSDKAuthView.h: -------------------------------------------------------------------------------- 1 | // 2 | // ISSDKAuthView.h 3 | // ShareSDK 4 | // 5 | // Created by fenghj on 15/12/2. 6 | // Copyright © 2015年 掌淘科技. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SSDKTypeDefine.h" 11 | 12 | 13 | @protocol ISSDKAuthView 14 | 15 | /** 16 | * 取消授权 17 | */ 18 | - (void)cancel; 19 | 20 | /** 21 | * 授权状态变更时触发 22 | * 23 | * @param stateChangedHandler 授权状态变更处理器 24 | */ 25 | - (void)onAuthStateChanged:(SSDKAuthorizeStateChangedHandler)stateChangedHandler; 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/ShareSDK.framework/Headers/SSDKData.h: -------------------------------------------------------------------------------- 1 | // 2 | // SSDKData.h 3 | // ShareSDK 4 | // 5 | // Created by fenghj on 15/6/5. 6 | // Copyright (c) 2015年 掌淘科技. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | /** 12 | * 数据 13 | */ 14 | @interface SSDKData : NSObject 15 | 16 | /** 17 | * 初始化数据 18 | * 19 | * @param URL 数据的地址 20 | * 21 | * @return 数据对象 22 | */ 23 | - (id)initWithURL:(NSURL *)URL; 24 | 25 | /** 26 | * 初始化数据 27 | * 28 | * @param data 原始数据对象 29 | * 30 | * @return 数据对象 31 | */ 32 | - (id)initWithData:(NSData *)data; 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/ShareSDK.framework/Headers/SSDKGooglePlusControllerStyle.h: -------------------------------------------------------------------------------- 1 | // 2 | // SSDKGooglePlusControllerStyle.h 3 | // ShareSDK 4 | // 5 | // Created by chenjd on 16/4/25. 6 | // Copyright © 2016年 掌淘科技. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface SSDKGooglePlusControllerStyle : NSObject 12 | 13 | /** 14 | * 风格共享实例 15 | * 16 | * @return 风格类实例 17 | */ 18 | + (instancetype)sharedInstance; 19 | 20 | /** 21 | * 支持的方向 22 | */ 23 | @property (nonatomic, assign) UIInterfaceOrientationMask supportedInterfaceOrientation; 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/ShareSDK.framework/Headers/SSDKMailViewControllerStyle.h: -------------------------------------------------------------------------------- 1 | // 2 | // SSDKMailViewControllerStyle.h 3 | // ShareSDK 4 | // 5 | // Created by 刘靖煌 on 15/12/24. 6 | // Copyright © 2015年 掌淘科技. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface SSDKMailViewControllerStyle : NSObject 12 | 13 | /** 14 | * 风格共享实例 15 | * 16 | * @return 风格类实例 17 | */ 18 | + (instancetype)sharedInstance; 19 | 20 | /** 21 | * 支持的方向 22 | */ 23 | @property (nonatomic, assign) UIInterfaceOrientationMask supportedInterfaceOrientation; 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/ShareSDK.framework/Headers/SSDKPlatform.h: -------------------------------------------------------------------------------- 1 | // 2 | // SSDKPlatform.h 3 | // ShareSDK 4 | // 5 | // Created by 冯 鸿杰 on 15/2/6. 6 | // Copyright (c) 2015年 掌淘科技. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SSDKTypeDefine.h" 11 | 12 | /** 13 | * 分享平台信息 14 | */ 15 | @interface SSDKPlatform : NSObject 16 | 17 | /** 18 | * 平台类型 19 | */ 20 | @property (nonatomic) SSDKPlatformType type; 21 | 22 | /** 23 | * 平台名称 24 | */ 25 | @property (nonatomic, copy) NSString *name; 26 | 27 | /** 28 | * 平台图标 29 | */ 30 | @property (nonatomic, retain) UIImage *icon; 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/ShareSDK.framework/Headers/SSDKSMSViewControllerStyle.h: -------------------------------------------------------------------------------- 1 | // 2 | // SSDKSMSViewControllerStyle.h 3 | // ShareSDK 4 | // 5 | // Created by 刘靖煌 on 15/12/24. 6 | // Copyright © 2015年 掌淘科技. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface SSDKSMSViewControllerStyle : NSObject 12 | 13 | /** 14 | * 风格共享实例 15 | * 16 | * @return 风格类实例 17 | */ 18 | + (instancetype)sharedInstance; 19 | 20 | /** 21 | * 支持的方向 22 | */ 23 | @property (nonatomic, assign) UIInterfaceOrientationMask supportedInterfaceOrientation; 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/ShareSDK.framework/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/ShareSDK.framework/Info.plist -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/ShareSDK.framework/ShareSDK: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/ShareSDK.framework/ShareSDK -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKExtension.framework/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKExtension.framework/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKExtension.framework/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKExtension.framework/Info.plist -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKExtension.framework/ShareSDKExtension: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKExtension.framework/ShareSDKExtension -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/ContentEditorImg/line@2x.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/ContentEditorImg/line@2x.gif -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_1.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_1@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_22.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_22.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_22@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_22@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_23.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_23.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_23@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_23@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_24.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_24@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_24@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_37.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_37.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_37@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_37@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_6.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_6@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.bundle/Icon/sns_icon_6@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.framework/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.framework/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.framework/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.framework/Info.plist -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.framework/ShareSDKUI: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Optional/ShareSDKUI.framework/ShareSDKUI -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/QQSDK/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/QQSDK/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/QQSDK/TencentOpenAPI.framework/Resources/ios_open_sdk_3.1.0.3_iphone: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/QQSDK/TencentOpenAPI.framework/Resources/ios_open_sdk_3.1.0.3_iphone -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/QQSDK/TencentOpenAPI.framework/TencentOpenAPI: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/QQSDK/TencentOpenAPI.framework/TencentOpenAPI -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/QQSDK/TencentOpenApi_IOS_Bundle.bundle/error.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/QQSDK/TencentOpenApi_IOS_Bundle.bundle/error.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/QQSDK/TencentOpenApi_IOS_Bundle.bundle/qqicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/QQSDK/TencentOpenApi_IOS_Bundle.bundle/qqicon.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/QQSDK/TencentOpenApi_IOS_Bundle.bundle/success.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/QQSDK/TencentOpenApi_IOS_Bundle.bundle/success.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WBSDKBasicButton.h: -------------------------------------------------------------------------------- 1 | // 2 | // WBSDKBasicButton.h 3 | // WeiboSDK 4 | // 5 | // Created by DannionQiu on 14/10/24. 6 | // Copyright (c) 2014年 SINA iOS Team. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class WBSDKBasicButton; 12 | typedef void (^WBSDKButtonHandler)(WBSDKBasicButton *button, 13 | BOOL isSuccess, 14 | NSDictionary *resultDict); 15 | 16 | @interface WBSDKBasicButton : UIButton 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/alert_error_icon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/alert_error_icon@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/alert_success_icon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/alert_success_icon@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/close.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/close@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/close@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/common_button_big_blue@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/common_button_big_blue@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/common_button_big_blue_disable@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/common_button_big_blue_disable@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/common_button_big_blue_highlighted@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/common_button_big_blue_highlighted@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/common_button_white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/common_button_white.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/common_button_white@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/common_button_white@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/common_button_white_highlighted.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/common_button_white_highlighted.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/common_button_white_highlighted@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/common_button_white_highlighted@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/common_icon_arrow@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/common_icon_arrow@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/compose_keyboardbutton_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/compose_keyboardbutton_background.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/compose_keyboardbutton_background@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/compose_keyboardbutton_background@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/compose_toolbar_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/compose_toolbar_background.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/compose_toolbar_background@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/compose_toolbar_background@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/empty_failed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/empty_failed.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/empty_failed@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/empty_failed@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/login_background@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/login_background@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/login_country_background@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/login_country_background@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/login_country_background_highlighted@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/login_country_background_highlighted@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/navigationbar_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/navigationbar_background.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/navigationbar_background@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/navigationbar_background@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/navigationbar_background_os7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/navigationbar_background_os7.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/navigationbar_background_os7@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/navigationbar_background_os7@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/progresshud_background@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/progresshud_background@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/sdk_weibo_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/sdk_weibo_logo.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/sdk_weibo_logo@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/sdk_weibo_logo@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/sdk_weibo_logo@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/sdk_weibo_logo@3x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/timeline_relationship_icon_addattention.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/timeline_relationship_icon_addattention.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/timeline_relationship_icon_addattention@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/timeline_relationship_icon_addattention@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/timeline_relationship_icon_addattention@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/timeline_relationship_icon_addattention@3x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/timeline_relationship_icon_attention.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/timeline_relationship_icon_attention.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/timeline_relationship_icon_attention@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/timeline_relationship_icon_attention@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/timeline_relationship_icon_attention@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/timeline_relationship_icon_attention@3x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/verify_code_button@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/verify_code_button@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/verify_code_button@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/verify_code_button@3x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/verify_code_button_highlighted@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/verify_code_button_highlighted@2x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/verify_code_button_highlighted@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/images/verify_code_button_highlighted@3x.png -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/mfp.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/WeiboSDK.bundle/others/mfp.cer -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/libWeiboSDK.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/SinaWeiboSDK/libWeiboSDK.a -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/WeChatSDK/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/WeChatSDK/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/WeChatSDK/libWeChatSDK.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/PlatformSDK/WeChatSDK/libWeChatSDK.a -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Required/MOBFoundation.framework/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Required/MOBFoundation.framework/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Required/MOBFoundation.framework/Headers/IMOBFPlugin.h: -------------------------------------------------------------------------------- 1 | // 2 | // IMOBFPlugin.h 3 | // MOBFoundation 4 | // 5 | // Created by fenghj on 15/6/2. 6 | // Copyright (c) 2015年 MOB. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | /** 12 | * 插件协议 13 | */ 14 | @protocol IMOBFPlugin 15 | 16 | @required 17 | 18 | /** 19 | * 插件加载时调用 20 | * 21 | * @param key 插件标识 22 | */ 23 | - (void)load:(NSString *)key; 24 | 25 | /** 26 | * 插件卸载时调用 27 | */ 28 | - (void)unload; 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Required/MOBFoundation.framework/Headers/MOBFColor.h: -------------------------------------------------------------------------------- 1 | // 2 | // MOBFColorUtils.h 3 | // MOBFoundation 4 | // 5 | // Created by vimfung on 15-1-19. 6 | // Copyright (c) 2015年 MOB. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | /** 13 | * 颜色工具类 14 | */ 15 | @interface MOBFColor : NSObject 16 | 17 | /** 18 | * 获取颜色对象 19 | * 20 | * @param rgb RGB颜色值 21 | * 22 | * @return 颜色对象 23 | */ 24 | + (UIColor *)colorWithRGB:(NSUInteger)rgb; 25 | 26 | /** 27 | * 获取颜色对象 28 | * 29 | * @param argb ARGB颜色值 30 | * 31 | * @return 颜色对象 32 | */ 33 | + (UIColor *)colorWithARGB:(NSUInteger)argb; 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Required/MOBFoundation.framework/Headers/MOBFImageObserver.h: -------------------------------------------------------------------------------- 1 | // 2 | // MOBFImageObserver.h 3 | // MOBFoundation 4 | // 5 | // Created by fenghj on 16/1/21. 6 | // Copyright © 2016年 MOB. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | /** 12 | * 图片观察者 13 | */ 14 | @interface MOBFImageObserver : NSObject 15 | 16 | /** 17 | * 图片链接 18 | */ 19 | @property (nonatomic, strong, readonly) NSURL *url; 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Required/MOBFoundation.framework/Headers/MOBFJSTypeDefine.h: -------------------------------------------------------------------------------- 1 | // 2 | // MOBFJSTypeDefine.h 3 | // MOBFoundation 4 | // 5 | // Created by 冯 鸿杰 on 15/2/27. 6 | // Copyright (c) 2015年 MOB. All rights reserved. 7 | // 8 | 9 | #ifndef MOBFoundation_MOBFJSTypeDefine_h 10 | #define MOBFoundation_MOBFJSTypeDefine_h 11 | 12 | /** 13 | * JS方法实现 14 | * 15 | * @param params 传入参数 16 | */ 17 | typedef void(^MOBFJSMethodIMP) (NSArray *arguments); 18 | 19 | #endif 20 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Required/MOBFoundation.framework/Headers/MOBFNumber.h: -------------------------------------------------------------------------------- 1 | // 2 | // MOBFNumberUtils.h 3 | // MOBFoundation 4 | // 5 | // Created by vimfung on 15-1-20. 6 | // Copyright (c) 2015年 MOB. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | /** 12 | * 数值工具类 13 | */ 14 | @interface MOBFNumber : NSObject 15 | 16 | /** 17 | * 获取随机整型值 18 | * 19 | * @param max 最大随机数 20 | * 21 | * @return 随机整数 22 | */ 23 | + (NSInteger)randomInteger:(NSInteger)max; 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Required/MOBFoundation.framework/Headers/MOBFViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // MOBFViewControllerUtils.h 3 | // MOBFoundation 4 | // 5 | // Created by vimfung on 15-1-19. 6 | // Copyright (c) 2015年 MOB. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | /** 13 | * 视图控制器工具类 14 | */ 15 | @interface MOBFViewController : NSObject 16 | 17 | /** 18 | * 获取当前视图控制器 19 | * 20 | * @return 视图控制器 21 | */ 22 | + (UIViewController *)currentViewController; 23 | 24 | /** 25 | * 获取当前视图控制器 26 | * 27 | * @param window 窗口 28 | * 29 | * @return 视图控制器 30 | */ 31 | + (UIViewController *)currentViewControllerFromWindow:(UIWindow *)window; 32 | 33 | @end 34 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Required/MOBFoundation.framework/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Required/MOBFoundation.framework/Info.plist -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Required/MOBFoundation.framework/MOBFoundation: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Required/MOBFoundation.framework/MOBFoundation -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Required/MOBFoundation.framework/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Required/MOBFoundation.framework/en.lproj/InfoPlist.strings -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Required/MOBFoundation.framework/readme: -------------------------------------------------------------------------------- 1 | ========================================= 2 | MOBFoundation.framework 3 | ========================================= 4 | 5 | 1、引用此库需要添加下面依赖库: 6 | libz.dylib 7 | libicucore.dylib 8 | 9 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Required/ShareSDKConnector.framework/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Required/ShareSDKConnector.framework/.DS_Store -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Required/ShareSDKConnector.framework/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Required/ShareSDKConnector.framework/Info.plist -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/ShareSDK/Support/Required/ShareSDKConnector.framework/ShareSDKConnector: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Other/Lib/ShareSDK/Support/Required/ShareSDKConnector.framework/ShareSDKConnector -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/TFHpple/XPathQuery.h: -------------------------------------------------------------------------------- 1 | // 2 | // XPathQuery.h 3 | // FuelFinder 4 | // 5 | // Created by Matt Gallagher on 4/08/08. 6 | // Copyright 2008 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NSArray *PerformHTMLXPathQuery(NSData *document, NSString *query); 12 | NSArray *PerformHTMLXPathQueryWithEncoding(NSData *document, NSString *query,NSString *encoding); 13 | NSArray *PerformXMLXPathQuery(NSData *document, NSString *query); 14 | NSArray *PerformXMLXPathQueryWithEncoding(NSData *document, NSString *query,NSString *encoding); 15 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/YZPerson/Category/UIImage+Image.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIImage+Image.h 3 | // 4 | // 5 | // Created by yz on 15/7/6. 6 | // Copyright (c) 2015年 yz. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIImage (Image) 12 | 13 | 14 | // 根据颜色生成一张尺寸为1*1的相同颜色图片 15 | + (UIImage *)imageWithColor:(UIColor *)color; 16 | 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Lib/YZPerson/YZTableView.h: -------------------------------------------------------------------------------- 1 | // 2 | // YZTableView.h 3 | // 个人详情控制器 4 | // 5 | // Created by yz on 15/8/13. 6 | // Copyright (c) 2015年 yz. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface YZTableView : UITableView 12 | 13 | 14 | 15 | @property (nonatomic, weak) UIView *tabBar; 16 | 17 | 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Login-登录/Controller/WTLoginViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTLoginViewController.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/2/23. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | @class WTLogin2FARequestItem; 11 | @interface WTLoginViewController : UIViewController 12 | /** 登陆成功的回调 */ 13 | @property (nonatomic, copy) void (^loginSuccessBlock)(); 14 | 15 | /** 两步验证请求参数 */ 16 | @property (nonatomic, strong) WTLogin2FARequestItem *twoFArequestItem; 17 | @end 18 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Login-登录/Model/WTLogin2FARequestItem.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTLogin2FARequestItem.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 2017/10/12. 6 | // Copyright © 2017年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTLogin2FARequestItem : NSObject 12 | 13 | @property (nonatomic, strong) NSString *once; 14 | 15 | @property (nonatomic, strong) NSString *code; 16 | 17 | @property (nonatomic, strong) NSString *usernameOrEmail; 18 | 19 | @property (nonatomic, strong) NSString *password; 20 | 21 | 22 | /** 23 | Init 24 | */ 25 | - (instancetype)initWithOnce:(NSString *)once usernameOrEmail:(NSString *)usernameOrEmail password:(NSString *)password; 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Login-登录/Model/WTLogin2FARequestItem.m: -------------------------------------------------------------------------------- 1 | // 2 | // WTLogin2FARequestItem.m 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 2017/10/12. 6 | // Copyright © 2017年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTLogin2FARequestItem.h" 10 | 11 | @implementation WTLogin2FARequestItem 12 | /** 13 | Init 14 | */ 15 | - (instancetype)initWithOnce:(NSString *)once usernameOrEmail:(NSString *)usernameOrEmail password:(NSString *)password 16 | { 17 | WTLogin2FARequestItem *item = [WTLogin2FARequestItem new]; 18 | item.once = once; 19 | item.usernameOrEmail = usernameOrEmail; 20 | item.password = password; 21 | return item; 22 | } 23 | @end 24 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Login-登录/Model/WTMemberAPIItem.m: -------------------------------------------------------------------------------- 1 | // 2 | // WTMemberAPIItem.m 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/23. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTMemberAPIItem.h" 10 | /* 11 | "id" : 76452, 12 | "username" : "cheng12308", 13 | "tagline" : "", 14 | "avatar_mini" : "//cdn.v2ex.co/avatar/ddff/d490/76452_mini.png?m=1447575557", 15 | "avatar_normal" : "//cdn.v2ex.co/avatar/ddff/d490/76452_normal.png?m=1447575557", 16 | "avatar_large" : "//cdn.v2ex.co/avatar/ddff/d490/76452_large.png?m=1447575557" 17 | */ 18 | @implementation WTMemberAPIItem 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Login-登录/Model/WTMemberItem.m: -------------------------------------------------------------------------------- 1 | // 2 | // WTMemberItem.m 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/7/29. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTMemberItem.h" 10 | 11 | @implementation WTMemberItem 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Login-登录/Model/WTUserItem.m: -------------------------------------------------------------------------------- 1 | // 2 | // WTUserItem.m 3 | // v2ex 4 | // 5 | // Created by gengjie on 2016/10/19. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTUserItem.h" 10 | 11 | @implementation WTUserItem 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Login-登录/View/WTLoginRegisterTextField.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTLoginRegisterTextField.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/3/10. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTLoginRegisterTextField : UITextField 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Nav-导航/WTNavigationController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTNavigationController.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/1/30. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTNavigationController : UINavigationController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Register-注册/Controller/WTRegisterViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTRegisterViewController.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/3/4. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTRegisterViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Register-注册/Model/WTContinueRegisterReqItem.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTContineRegisterReqItem.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 2017/10/6. 6 | // Copyright © 2017年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTContinueRegisterReqItem : NSObject 12 | 13 | /** once */ 14 | @property (nonatomic ,strong) NSString *once; 15 | 16 | /** code */ 17 | @property (nonatomic ,strong) NSString *code; 18 | 19 | 20 | /** 21 | 快速初始化 22 | 23 | @param once once 24 | @param code code 25 | @return WTContinueRegisterReqItem 26 | */ 27 | - (instancetype)initWithOnce:(NSString *)once code:(NSString *)code; 28 | @end 29 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/Register-注册/Model/WTContinueRegisterReqItem.m: -------------------------------------------------------------------------------- 1 | // 2 | // WTContineRegisterReqItem.m 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 2017/10/6. 6 | // Copyright © 2017年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "WTContinueRegisterReqItem.h" 10 | 11 | @implementation WTContinueRegisterReqItem 12 | /** 13 | 快速初始化 14 | 15 | @param once once 16 | @param code code 17 | @return WTContinueRegisterReqItem 18 | */ 19 | - (instancetype)initWithOnce:(NSString *)once code:(NSString *)code 20 | { 21 | WTContinueRegisterReqItem *item = [WTContinueRegisterReqItem new]; 22 | item.once = once; 23 | item.code = code; 24 | return item; 25 | } 26 | @end 27 | -------------------------------------------------------------------------------- /v2ex/Classes/Other/TabBar/WTTabBarController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTTabBarController.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/1/30. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTTabBarController : UITabBarController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/Resource/HY-QiHei50.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Resource/HY-QiHei50.ttf -------------------------------------------------------------------------------- /v2ex/Classes/Resource/nodeitem.sqlite: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Resource/nodeitem.sqlite -------------------------------------------------------------------------------- /v2ex/Classes/Resource/themes.txt: -------------------------------------------------------------------------------- 1 | NORMAL NIGHT RED 2 | #ffffff #343434 #fafafa BG 3 | #aaaaaa #313131 #aaaaaa SEP 4 | #0000ff #ffffff #fa0000 TINT 5 | #000000 #ffffff #000000 TEXT 6 | #ffffff #444444 #ffffff BAR 7 | #f0f0f0 #222222 #dedede HIGHLIGHTED 8 | #F2F3F5 #222222 #dedede UITableViewBackgroundColor 9 | #FFFFFF #222222 #dedede UITableViewCellBgViewBackgroundColor 10 | #494949 #222222 #dedede WTTopicTitleColor 11 | #AAAAAA #222222 #dedede WTTopicCellLabelColor 12 | #DCDDDE #222222 #dedede UINavbarLineViewBackgroundColor 13 | #3599F7 #222222 #dedede WTNodeSelectedColor 14 | #EFEFEF #222222 #dedede UINavbarBackgroundColor 15 | #3599F7 #222222 #dedede UITabbarTintColor 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /v2ex/Classes/Resource/v2ex.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/misaka14/v2ex-OC/ef6723b91b429dd0cb7b69b6f8144ac95953d67e/v2ex/Classes/Resource/v2ex.js -------------------------------------------------------------------------------- /v2ex/Classes/Tool(工具类)/Http/WTNetworkState.h: -------------------------------------------------------------------------------- 1 | // 2 | // SXNetworkState.h 3 | // 网易新闻Demo 4 | // 5 | // Created by 无头骑士 GJ on 15/11/27. 6 | // Copyright © 2015年 耿杰. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTNetworkState : NSObject 12 | 13 | @property (nonatomic, assign)NSInteger status; 14 | 15 | + (instancetype)shareNetworkState; 16 | 17 | /** 18 | * 是否有网络 19 | * 20 | * @return true 有网络 false 无网络 21 | */ 22 | - (BOOL)isNetwork; 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /v2ex/Classes/Tool(工具类)/WTCellAnimationTool.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTCellAnimationTool.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 2017/4/28. 6 | // Copyright © 2017年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTCellAnimationTool : NSObject 12 | 13 | + (void)animation01WithCell:(UITableViewCell *)cell; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /v2ex/Classes/Tool(工具类)/WTFPSLabel.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTFPSLabel.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/3/10. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTFPSLabel : UILabel 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/Classes/Tool(工具类)/WTPerson/Category/UIImage+Image.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIImage+Image.h 3 | // 4 | // 5 | // Created by 无头骑士 GJ on 16/3/10. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIImage (Image) 12 | 13 | 14 | // 根据颜色生成一张尺寸为1*1的相同颜色图片 15 | + (UIImage *)imageWithColor:(UIColor *)color; 16 | 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /v2ex/Classes/Tool(工具类)/WTPerson/WTPersonTableViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTPersonTableViewController.h 3 | // 个人详情控制器 4 | // 5 | // Created by 无头骑士 GJ on 16/3/10. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | #define WTHeadViewH 200 11 | 12 | #define WTHeadViewMinH 64 13 | 14 | #define WTTabBarH 44 15 | 16 | @interface WTPersonTableViewController : UITableViewController 17 | 18 | @property (nonatomic, weak) UIView *tabBar; 19 | 20 | @property (nonatomic, weak) NSLayoutConstraint *headHCons; 21 | 22 | @property (nonatomic, weak) UILabel *titleLabel; 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /v2ex/Classes/Tool(工具类)/WTPerson/WTPersonViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTPersonViewController.h 3 | // 个人详情控制器 4 | // 5 | // Created by 无头骑士 GJ on 16/3/10. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTPersonViewController : UIViewController 12 | 13 | // 个人头像控件 14 | @property (weak, nonatomic) IBOutlet UIImageView *personIconView; 15 | 16 | /** 个人头像控件 */ 17 | @property (strong, nonatomic) UIImage *personIconImage; 18 | 19 | /** 个人明信片控件 */ 20 | @property (strong, nonatomic) UIImage *personCardImage; 21 | 22 | /** 用户名 */ 23 | @property (strong, nonatomic) NSString *personName; 24 | 25 | // 设置导航条 26 | - (void)setUpNav; 27 | @end 28 | -------------------------------------------------------------------------------- /v2ex/Classes/Tool(工具类)/WTPerson/WTTableView.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTTableView.h 3 | // 个人详情控制器 4 | // 5 | // Created by 无头骑士 GJ on 16/3/10. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTTableView : UITableView 12 | 13 | 14 | 15 | @property (nonatomic, weak) UIView *tabBar; 16 | 17 | 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /v2ex/Classes/Tool(工具类)/WTShareSDKTool.h: -------------------------------------------------------------------------------- 1 | // 2 | // WTShareSDKTool.h 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/3/17. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WTShareSDKTool : NSObject 12 | /** 13 | * 初始化shareSDK 14 | */ 15 | + (void)initShareSDK; 16 | 17 | /** 18 | * 分享 19 | * 20 | * @param text 正文 21 | * @param url 要跳转的URL 22 | * @param title 标题 23 | */ 24 | + (void)shareWithText:(NSString *)text url:(NSString *)url title:(NSString *)title; 25 | @end 26 | -------------------------------------------------------------------------------- /v2ex/MJExtensionConfig.h: -------------------------------------------------------------------------------- 1 | // 2 | // MJExtensionConfig.h 3 | // v2ex 4 | // 5 | // Created by gengjie on 2016/10/21. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface MJExtensionConfig : NSObject 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /v2ex/MJExtensionConfig.m: -------------------------------------------------------------------------------- 1 | // 2 | // MJExtensionConfig.m 3 | // v2ex 4 | // 5 | // Created by gengjie on 2016/10/21. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import "MJExtensionConfig.h" 10 | #import "MJExtension.h" 11 | #import "WTUserItem.h" 12 | 13 | @implementation MJExtensionConfig 14 | 15 | + (void)load 16 | { 17 | [WTUserItem mj_setupReplacedKeyFromPropertyName:^NSDictionary *{ 18 | return @{@"uid" : @"id"}; 19 | }]; 20 | } 21 | 22 | 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /v2ex/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // v2ex 4 | // 5 | // Created by 无头骑士 GJ on 16/1/13. 6 | // Copyright © 2016年 无头骑士 GJ. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "AppDelegate.h" 11 | 12 | int main(int argc, char * argv[]) { 13 | @autoreleasepool { 14 | 15 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /v2ex/v2ex.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | aps-environment 6 | development 7 | com.apple.security.application-groups 8 | 9 | group.com.wutouqishi.today 10 | 11 | keychain-access-groups 12 | 13 | $(AppIdentifierPrefix)com.wutouqishi.v2ex 14 | 15 | 16 | 17 | --------------------------------------------------------------------------------