OC中關於NSClassFromString獲取不到Swift類的解決方案
在OC和Swift混編的過程中發現在OC中通過NSClassFromString獲取不到Swift中的類,調研了一下發現問題所在,下面是我的解決方案:
問題的發現過程
UIViewController *destinationVC = [[NSClassFromString(demoInfoModel.demoVCName) alloc] init];
[self.navigationController pushViewController:destinationVC animated:YES];
在使用以上程式碼時發現,Swift的通過類名在OC中通過NSClassFromString獲取不到這個類
,返回值為nil
問題的原因和解決方法
經過一番查詢後發現是因為在OC中Swift類中的所有類的介面都轉到了一個叫YourProduct_Example-swift.h
的標頭檔案中,YourProduct
是你的工程名,其中的類名和方法都已經改變了,我們需要做的就行進入到這個標頭檔案中,去找到對應的類名就行了,如下圖所示:
紅框裡面的字串就是你Swift裡面轉成OC後的類名,將之前的類名替換就行了,比如:
// 我之前的類名是WCLLoadingViewViewDemoVC
NSClassFromString(@"WCLLoadingViewViewDemoVC")
// 替換到OC中就是_TtC19CRAnimation_Example20WCLLoadingViewDemoVC
NSClassFromString(@"_TtC19CRAnimation_Example20WCLLoadingViewDemoVC")
通過以上步驟就能轉換成功了
相關推薦
在微信瀏覽器中 location.reload() 不刷新解決方案(直接調用方法)
arc time lac load() 直接 新解 () light 刷新 1、問題 在微信瀏覽器中,需要時刷新當前頁面。 正常情況下我們直接使用 location.reload 方法來刷新。 2、解決方法 function realod(){
HTTPS中證書鏈不完整的解決方案
問題 tomcat8.5配置pfx格式ssl證書後,https可以正常訪問,但是(問題與下面這個情況相同): 由於我們的部分業務場景是在微信(WebView)中開啟https的web頁面,在測試過程中卻發現了一個問題,在Chrome中測試完全正常的https
整理webView控制元件載入H5網頁中視訊播放不了的解決方案
做專案時碰上載入h5頁面的視訊播放不了 結合網上資源 整理到自己程式碼中問題解決,做記錄如下: 1.在webView的Activity配置裡面加上: android:hardwareAccelerated=”true” 2.設定webview
umeng訊息推送獲取不到DeviceToken解決方案
1.請先檢查使用Demo能否正常工作2.確定是否將appkey、MessageSecret、以及包名都更換為開發者所申請的相應值3.確定是否將Manifest裡的幾個intent的字首更換了如果使用的是自定義IntentService :確定是否呼叫PushAgent裡
OC中關於NSClassFromString獲取不到Swift類的解決方案
在OC和Swift混編的過程中發現在OC中通過NSClassFromString獲取不到Swift中的類,調研了一下發現問題所在,下面是我的解決方案: 問題的發現過程 UIViewController *destinationVC = [[N
Springboot中request.getInputStream()獲取不到流解決辦法
問題描述 使用Springboot整合wpsoffice線上編輯儲存時獲取不到流。在Springboot程式啟動後,會預設新增OrderedCharacterEncodingFilter和HiddenHttpMethodFilter過濾器。在HiddenHttpMe
MyBatis中五種成功對映資料庫欄位與實體類屬性不一致的解決方案
在Mybatis中,當根據某欄位查詢資料庫資訊時,如果資料庫欄位名與實體類屬性名稱不一致,查詢時,會出現賦值不上的情況,值為Null。本次將給出五種方案,其中方案三、四為推薦。例如:根據學號sno查詢學生資訊1.資料庫表student欄位名稱以及型別:2.資料庫表內容:3.實
IE11中使用window.open()方法獲取不到引數解決方法
在父頁面中使用window.open()的方法開啟 <pre class="javascript" name="code"> var selectUrl = USER_SELECT_URL + params.join("&"); var
解決app內嵌h5中ios獲取不到title,vue router 修改title(IOS 下動態改變title失效)
在ios下app 設定document.title = "titleName" 失效,原因是在IOS webview中網頁標題只加載一次,動態改變是無效的。 vue中npm install vue-wechat-title元件 在路由配置中新增 meta物件 如:
MyBatis學習筆記-03.MyBatis中五種成功對映資料庫欄位與實體類屬性不一致的解決方案
在Mybatis中,當根據某欄位查詢資料庫資訊時,如果資料庫欄位名與實體類屬性名稱不一致,查詢時,會出現賦值不上的情況,值為Null。本次將給出五種方案,其中方案三、四為推薦。例如:根據學號sno查詢學生資訊1.資料庫表student欄位名稱以及型別:2.資料庫表內容:3.實
Idea中Web專案Jsp檔案找不到類解決方法
在jsp檔案中用useBean建立一個與某個java物件相關的指令碼變數,結果出現找不到類的異常,例如下圖: 用useBean建立一個Employee物件,但出現了Employee cannot be resolved to a type錯誤。 最後發現
idea 多模塊依賴時 tomcat啟動 找不到類解決辦法
exception 多模塊 ont 圖片 ava .com com http 模塊 三個模塊,moduleA、moduleB、moduleC,A依賴B和C,在idea中使用tomcat部署moduleA子模塊時,一直提示java.lang.ClassNotFoundExce
cdh平臺搭建過程中主機不受管解決方案
序言 實驗室的叢集中一直安裝的都是原生的hadoop、hbase等生態圈軟體,最近由於給出的一個技術方案涉及到hbase-indexer(雖然目前還沒用上),而hbase-indexer暫時沒找到Apache版本,需要自己編譯,而在本機上好像出現了一些錯誤,因此選擇使用cdh版本的h
在STS(Spring Tool Suite)中配置Maven,以及配置不成功的解決方案
Spring Tool Suite Spring 專案快速開發的工具集合,簡稱sts。 主要用於快速的開發Spring專案,我們不用再去編輯繁瑣的xml配置檔案,而是由工具自動生成。 STS下載 1.可自行到官網下載,選擇需要版本下載 2.ST
SpringBoot打jar包或war包獲取不到資原始檔解決辦法
問題描述 在開發過程中我們經常會碰到要在程式碼中獲取資原始檔的情況,而我在最近將原有的Tomcat的原生專案遷移到SpringBoot專案中時碰到一個問題,就是在本地執行時,獲取本地的xml資原始檔是能夠獲取到的,但是專案打成war包然後將其部署到Tomcat中執行時,就會發生問題,報找不到資原始檔的錯誤。
關於maven專案中修改的JS不生效的解決方案
1. 問題描述 昨天下午博主在開發學習的過程中,碰到一個修改了JS無法生效的問題,折騰我不少的時間,現將百度到的解決方案總結一下,以便下次碰到類似問題能夠最快的找到解決方案 2 解決方案 2.1 方案1 點選File->setting,搜尋框輸入compiler,如下圖所示: 然後點選ap
Struts2中JSTL標籤不起作用解決辦法
1.設定某個jsp頁面使用el表示式,需要在jsp頁面加上(控制單個頁面) <%@ page isELIgnored="false"%> //我設定了這點就可以了, 2.看你的web.xml檔案中頭的引用應該是 2.4.xsd <web-app id="WebApp_
【exe】electron專案中使用jquery不生效的解決方法
electron專案中jquery沒法用的解決方法,比較簡單的方式就是在引入jquery之前加入一下程式碼: <script> window.nodeRequire = require; delete window.require; delete window.exports
javascript 中new Date().toLocaleString()在不同瀏覽器中的結果不一致的解決方法
Date.prototype.toLocaleString = function () { return this.getFullYear()+’-’+(this.getMonth()+1)+’-’+this.getDate()+’  ’+this.getHou
EasyUI 關於 panel,window,dialog 通過href載入頁面,頁面中引用的js不執行的解決方案
詳細說明請參閱:http://www.jeasyuicn.com/post-49.html href 指向的頁面不能是完整的html頁面,需要是不包含html,body,head標籤的html片段, 如 <link href="/resources/css/dhteu