2011-12-10 22 views
0

UIScrollViewを作成しました。スクロールビューにUIButtonを配置しようとしています。しかし、アプリケーションをビルドして実行するとスクロールビューは正常に動作しますが、UIButtonは表示されません。UIScrollViewはUIButtonをカバーします

インターフェイスビルダー内でUIButton IBOutletをリンクします。

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    // Do any additional setup after loading the view, typically from a nib. 

    scrollView = [[UIScrollView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]]; 
    scrollView.backgroundColor = [UIColor blackColor]; 
    scrollView.delegate = self; 
    scrollView.bounces = NO; 

    backgroundImage = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"auckland-300.jpg"]]; 

    image = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"249a-134206f1d00-1342071f5d9.ImgPlayerAUCKLAND.png"]]; 

    // Note here you should size the container view appropriately and layout backgroundImage and image accordingly. 
    containerView = [[UIView alloc] initWithFrame:CGRectMake(0,0,601,601)]; 
    playButton = [[UIButton alloc] init]; //test button cannot see it. 
    [containerView addSubview:backgroundImage]; 
    [containerView addSubview:image]; 

    scrollView.contentSize = containerView.frame.size; 
    [scrollView addSubview:containerView]; 

    scrollView.minimumZoomScale = 0.5; 
    scrollView.maximumZoomScale = 31.0; 
    [scrollView setZoomScale:scrollView.minimumZoomScale]; 
    self.view = scrollView;  
} 

すべてのヘルプは

+0

* scrollViewまたは* above * scrollViewにUIButton *を追加しますか?スクロールビューの上に – akashivskyy

+0

が表示されるので、ボタンに影響を与えずにズームしてスクロールすることができます。 –

答えて

1

すべては問題ありません。しかし、あなたがボタンplayButtonを見ることができない理由は、それをviewに追加していないからです。

あなたはこれを行う必要はありませんか?あなたを助けるために[containerView addSubview:playButton];

は、ここでのデバッグのために私は何をすべきかだ -

UIViewのは便利な記述方法を実装します。さらに、 はrecursiveDescriptionメソッドを実装しています。これを呼び出すことで、ビュー階層全体のサマリーを として取得できます。

NSLog(@"%@", [controller.view recursiveDescription]); 
+0

Hrmm ..まだ面白いです。私は本当にスローグを使用するが、コントローラとの問題については真実だと思っている。 –

+0

しかし、プログラムで設計されたボタンを使って作業することができます。私はそれを同じビューに入れたときにもズームします。だから、私はそれを上に現れるようにする方法を見つけようとしています。おそらく別のビューや何かで。 –

+0

はいできました。また、この回答が役に立った場合、この回答を受け入れることを検討してください...ありがとう –

0

ボタンを使用すると、コントローラが右側に表示リンクペン先で、おそらくあると理解されるでしょうか?ビューにスクロールビューを割り当てることで、ビューをビューから削除します。 コントローラからのペン先です。そのため、テー・ボタンを見ることはできません。

ボタンをスクロールビューに配置することも、scrollViewとthenthe playButtonの両方をself.viewのサブビューとして追加することもできます。

多分あなたはあなたのデザインを考え直したいと思うかもしれません。 スクロールビュー上にボタンを置くことは、私にとっては良い練習のようには思えません。

+0

大丈夫ですよ、ありがとうございました。現在、ボタンは後でテストするためのものです。スクロールビューなどの中でアニメーションを再生するために透明な画像を再生したいと思っています。 –

関連する問題