目前我正在開發一個iOS項目。其中我有兩個從同一類派生的視覺上相似的對象。想我要的是,當我做一個對象上需要改變相同的對象2.更改一個對象應該會影響同一類的其他對象
詳細一些變化:
我有一個類MyClass
和obj1
和obj2
從MyClass
的。當我在obj1
上執行某些操作時,它會調用obj1
的相應代理方法。現在我想要的是當obj1
調用它的委託方法時,我還需要調用obj2
的委託方法。相同:如果我更改obj2
它會影響obj1
。我還需要在將來添加更多元素。
我做了什麼:
我添加了一個單例類,並放置在其上的陣列,並添加的對象了這一點。
而且在委託方法:
- (void)delegateMethod:(id)param
{
NSMutableArray *arr = [[MySingleTon sharedObject] getArray];
for(int loop = 0;loop<[arr count];loop++)
{
if(![arr objectAtIndex] == self)
{
[[arr objectAtIndex:loop] delegateMethod:param];
}
}
}
發生了什麼事是:
但問題是它會導致一個無限循環。 Obj2會做同樣的事情,所有其他的對象也會做同樣的事情。我被困在這裏,我有大約25個委託方法,需要實現相同的功能。我無法通過添加額外參數來更改委託方法。
有沒有解決方案?請提前幫助,幫助我。
爲什麼我需要這個/實際執行:
我創建了可縮放自定義視圖/旋轉等我創建相同類的兩個對象,並把它添加到我的父視圖。現在,當我在視圖1上更改任何內容時,它應該改變視圖2中的相似內容。我還需要添加更多視圖。
從哪裏我調用其他對象的委託方法?此外,我將在未來添加更多同類的對象。那麼處理起來會很困難(增加個人通話)。 – 2013-03-20 10:38:02