2016-03-30 10 views
0

スクロールビューを使用して一部のビューを読み込みたいとします。私は、私のビューコントローラと1つのフローティングボタンで6ビューを持っています。最初のビューでは、フローティングボタンを表示したくない、残りのビューで表示したいと思います。私はこのような見解ロードしています:ここでスクロールビュー内でUiViewのフローティングボタンを非表示にするにはどうすればよいですか?

-(void)loadViews 
{ 
    for (UIView *view in self.scrollView.subviews) 
    { 
     [view removeFromSuperview]; 
    } 
    for (int i=0; i<self.arrayViews.count; i++) 
    { 
     UIView *view = [self.arrayViews objectAtIndex:i]; 
     CGRect frame =view.frame; 
     frame.origin.x = self.scrollView.bounds.size.width * i; 
     view.frame = frame; 
     [self.scrollView addSubview:view]; 
     floatBtn.hidden = YES; 
    } 
} 

を私は、フローティングボタンを表示したくないマイプロファイル]タブで、この

enter image description here

のように付け加えました。

この画面では、フローティングボタンを表示します。

enter image description here

+0

@honk。編集に感謝します。 –

+0

あなたの質問は不明です。あなたはあなたのボタンを見せたくないようです。また、 'arrayViews.count'と同じ' floatBtn'をhiddenに設定します。 – Xvolks

+0

OPは 'floatBtn'の作成方法を説明する必要があります。このボタンはビューごとに1つですか?実際に何が期待されているのかという疑問には手がかりがありません。私は、スクロールビューで最初のビューが表示されているときに、(サブビューから切り離された)1つのユニークなボタンを非表示にしたいと考えています。 – Xvolks

答えて

0

だから、ボタンで、このようなビューコントローラ(SWIFT構文)を持っています。 コードの非表示状態をコードで管理し、可視表示を変更するたびにselectViewなどのメソッドを呼び出す必要があります。

class MyViewController : UIViewController { 
    @IBOutlet var floatBtn:UIButton! 

    override func viewWillAppear(animated:Bool) { 
     super.viewWillAppear(animated) 
     self.loadViews() 
     self.selectView(0) 
    } 

    //your loadViews method 
    func loadViews() { 
     //remove your floatBtn.hidden = YES; line here 
    } 

    func selectView(viewIndex:Int) { 
     // do stuff to show your view 
     self.mySubViewChanged(viewIndex != 0) 
    } 


    //create a method that will be called when an event triggers the subview change 
    func mySubViewChanged(needsButton:Bool) { 
     floatBtn.hidden = !needsButton 
    } 
} 
関連する問題