2011-05-20 4 views
2

地獄のすべて、アプリケーションは[scrollView removeFromSuperview]でクラッシュします。

私はiPhoneに新しく、次の問題を抱えています。
次のステートメントでスクロールビューを削除すると、appliがクラッシュします。

[scrollView removeFromSuperview]; 

私は次の行でuiscrollviewを追加しています。

[self.view addSubview:scrollView]; 

ここにログがあります。

Thread 0 Crashed: 
0 libobjc.A.dylib     0x34a80466 objc_msgSend + 18 
1 UIKit       0x341aaaa8 -[UIView(Hierarchy) _makeSubtreePerformSelector:withObject:withObject:copySublayers:] + 152 
2 UIKit       0x341aaace -[UIView(Hierarchy) _makeSubtreePerformSelector:withObject:withObject:copySublayers:] + 190 
3 UIKit       0x341aaace -[UIView(Hierarchy) _makeSubtreePerformSelector:withObject:withObject:copySublayers:] + 190 
4 UIKit       0x341c05a0 -[UIView(Hierarchy) removeFromSuperview] + 208 
5 UIKit       0x34249a76 -[UIScrollView removeFromSuperview] + 42 
6 KabushikiShimbun    0x000387b6 -[PDFPageScrollViewController ReGenerateScrollViewAsperNewData] (PDFPageScrollViewController.m:1451) 
7 KabushikiShimbun    0x00038aac -[PDFPageScrollViewController CheckPageUpdationWithDate:] (PDFPageScrollViewController.m:1441) 
8 KabushikiShimbun    0x0003c472 -[PDFPageScrollViewController requestFinished:] (PDFPageScrollViewController.m:792) 
9 CoreFoundation     0x35818bb8 -[NSObject(NSObject) performSelector:withObject:] + 16 
10 KabushikiShimbun    0x0000e9ba -[ASIHTTPRequest reportFinished] (ASIHTTPRequest.m:1945) 
11 CoreFoundation     0x35818bb8 -[NSObject(NSObject) performSelector:withObject:] + 16 
12 Foundation      0x3118178e __NSThreadPerformPerform + 262 
13 CoreFoundation     0x358307d6 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 6 
14 CoreFoundation     0x358025b0 __CFRunLoopDoSources0 + 376 
15 CoreFoundation     0x35801e54 __CFRunLoopRun + 224 
16 CoreFoundation     0x35801c80 CFRunLoopRunSpecific + 224 
17 CoreFoundation     0x35801b88 CFRunLoopRunInMode + 52 
18 GraphicsServices    0x320c84a4 GSEventRunModal + 108 
19 GraphicsServices    0x320c8550 GSEventRun + 56 
20 UIKit       0x341dc322 -[UIApplication _run] + 406 
21 UIKit       0x341d9e8c UIApplicationMain + 664 
22 KabushikiShimbun    0x00002da6 main (main.m:14) 
23 KabushikiShimbun    0x00002d70 start + 32 


ありがとうございます。

+0

コードを投稿できますか?おそらく無効なオブジェクトです。 –

+0

もっとコードを表示できますか? –

+0

あなたはデバッガでチェックしましたか?どこで行がクラッシュするのですか?/ –

答えて

0

このコードを試してください。テスト済みです。

NSArray *subviews = [[NSArray alloc] initWithArray:self.view.subviews]; 
for(UIScrollView *subview in subviews) { 
    [subview removeFromSuperView]; 
} 
[subviews release]; 

が、それはそれはスーパービューから削除する前にスーパーがあるかどうかを

for(UIView *view in self.view.subviews) 

{ 
    if([view isMemberOfClass:[UIScrollView class]]) 
    { 
     [scrollview removeFromSuperView]; 
    } 
} 
1

内のすべてのScrollViews存在を取り除く気をつけなります。

if([scrollView superview]!=nil){ 
    [scrollView removeFromSuperview]; 
} 
1

が確認このコードを試してみてください、あなたのself.view

関連する問題