2017-11-03 5 views
0

スタック(UINaviationController)の上に表示する必要があるサブレイヤを追加しようとしていますが、表示できないほど上手く表示されますが、それは正常に動作し、UINavigtioncontroller全体を破棄してスタック全体を強制終了するか、単にビューの一部を削除して、上に黒い画面を残します。私は必要なものサブビューをスタックにプッシュしてポップする際の問題

は私のサブビューは、スタックの一番上に表示するために、私の代理人がここにサブビューを作成

を次のようにコードが見えます

呼び出された後、スタックからそれをポップできるようにするためであります

- (IBAction)transactionListViewCameraBtn_Pressed:(id)sender { 

    if([NWTillHelper isDebug] == 1) { 
     NSLog(@"%s entered", __PRETTY_FUNCTION__); 
    } 

    self.capture = [[ZXCapture alloc] init]; 
    self.capture.camera = self.capture.back; 
    self.capture.focusMode = AVCaptureFocusModeContinuousAutoFocus; 

    [self.view.layer addSublayer:self.capture.layer]; 


    [self.view bringSubviewToFront:self.scanRectView]; 
    [self.view bringSubviewToFront:self.decodedLabel]; 

    self.capture.delegate = self; 

    [self applyOrientation]; 
} 

、これは私が再びサブビューを却下する使用しようとしましたが、それらのどれも

[self.view removeFromSuperview]; 
//[self dismissViewControllerAnimated:YES completion:nil]; 
//[[self navigationController] popViewControllerAnimated:YES]; 
//[self removeFromParentViewController]; 
を働かないものです210

私は何かを逃しているに違いないが何?

答えて

2

キャプチャレイヤを削除してscanRectViewを非表示にする必要があります。ちょうど私が何度も繰り返し、それを再作成するときに問題が発生しますそれを隠すことによって、働いていた

self.scanRectView.hidden = YES; 
[self.capture.layer removeFromSuperlayer]; 
+0

クール:

はコードの下にこれをしてみてください?それとも私のために自動的に処理されますか?私はカメラのボタンのメソッドを押すたびに、私は意味ですか? –

+0

実際に私はこのコードをQRコードに使用しています。私は 'scanRectView'でスキャナのレイアウトを取っていますので、スキャンが完了すると、そのビューと' removeCaptureLayer'がそのスーパービューから隠されます –

+0

'self.view'に' scanRectView'を追加していますので、 'scanRectView'を隠したい/ 。 'self.view'を取り除く必要はありません –

関連する問題