1
我有一個自己調用的方法。即檢查方法來電來源? Objective-C
-(void)myMethod
{
//do stuff
[self myMethod];
//do stuff
}
我需要檢查,從內myMethod
那裏它被稱爲從。例如,IF稱爲myMethod
做到這一點,否則做到這一點。
任何幫助非常感謝,謝謝。
我有一個自己調用的方法。即檢查方法來電來源? Objective-C
-(void)myMethod
{
//do stuff
[self myMethod];
//do stuff
}
我需要檢查,從內myMethod
那裏它被稱爲從。例如,IF稱爲myMethod
做到這一點,否則做到這一點。
任何幫助非常感謝,謝謝。
你可以傳遞一個布爾值來顯示從外部調用,從遞歸調用嗎?
-(void)myMethod:(bool)externalCall
{
//do stuff
[self myMethod:false];
//do stuff
}
然後調用,從外面用:
[self myMethod:true];
這可能是過度簡化,特別是如果你需要從多個不同地點的調用方法(而不是遞歸VS外部調用)但在我看來,對你提出的問題最簡單的答案。
[Objective C查找方法的調用者]的可能的副本(http://stackoverflow.com/questions/1451342/objective-c-find-caller-of-method) – Glorfindel
你可以傳遞一個參數給myMethod嗎?這是處理遞歸的標準方式。 –