2012-04-19 7 views
2

私はUIActionSheetについて簡単な質問をしました!どのように私はUIActionsheetの高さを設定するのですか?私はsetFrameとsetBoundsを試しましたが、何も動作していません。私は、次のアクションシートを使用しています:ここuiactionheetの高さ

NSString *title = UIDeviceOrientationIsLandscape([UIDevice currentDevice].orientation) ? @"\n\n\n\n\n\n\n\n\n" : @"\n\n\n\n\n\n\n\n\n\n\n\n" ; 
    UIActionSheet *actionSheet = [[UIActionSheet alloc] 
            initWithTitle:[NSString stringWithFormat:@"%@%@", title, NSLocalizedString(@"", @"")] 
            delegate:self cancelButtonTitle:@"Cancel" destructiveButtonTitle:nil otherButtonTitles:@"Button1",@"Button2", nil]; 
    [actionSheet setTag: 1]; 
    //[actionSheet setBounds:CGRectMake(0,0,320,150)]; 
    //[actionSheet showFromRect:CGRectMake(0,0,100,50) inView: self.parentViewController.tabBarController.view animated:YES]; 
    // [actionSheet setFrame:CGRectMake(0, 30, 320, 30)]; 
    actionSheet.actionSheetStyle = UIActionSheetStyleAutomatic; 
    [actionSheet showInView:self.parentViewController.tabBarController.view]; 
    actionSheet = nil; 

私の問題は、アクションシートの高さは、現在のビューの高さに等しいです。私は、UIActionSheetの内容に基づいて高さを自動的に調整したいと思います。事前に

おかげで、

答えて

4

UIActionSheetのデフォルトの動作は、そのコンテンツのサイズに自動調整することです。 frameは直接設定しないでください。

あなたはそれが必要以上に垂直方向のスペースをとるためにタイトルラベルを強制的に、タイトルに改行文字の束を挿入しているため、アクションシートはそんなに部屋を取る見ています。アクションシートの背丈を高くしたくない場合は、そのようなタイトルをハックしないでください。

+0

ありがとう...私のばかげたミスでした。 – Krishna

+0

@RamaBoya、問題ありません。少なくともあなたは質問に改行を入れました...そうでなければ、答えることは不可能でした。 –