2011-10-20 7 views
1

実際には上下の矢印だけでアクションシートを表示する必要があります。私は私の見解では異なる列を持っています。今の問題は、最初の列をクリックすると上向きのアクションシートが表示されますが、アクションシートの中には2番目の列が表示されるので、左に矢印を移動する必要があります。iPadアプリのUIActionsシートの矢印方向を調整

私は以下のコードからこのことを管理しています。私は最後の列の右側に矢印を移動することができません。

float x=offset.x; 
float y=offset.y; 
float w=newPop.frame.size.width; 
float h=newPop.frame.size.height; 
if(offset.x < 150) 
{ 
    x = 160; 
    w = w-180; 
} 
else if(offset.x > 600) 
{ 
    x= 600; 
    //w= w+180; 
} 

CGRect myImageRect = CGRectMake(x, y, w, h); 


[newPop showFromRect:myImageRect inView:_calDay animated:YES]; 

これは、矢印の幅を縮小することによって、矢印の左上を管理します。それに合わせて右方向に調整することはできません。

解決策がある場合は教えてください。下のスナップをチェックしてください。私は上向きに左に向かっていますが、上向きの方向が必要です。私が提案する何

enter image description here

+0

UIActionSheet? UIPopOverControllerではない? – Jake

+0

はい私は新しいAPIを使用してUIActionsheetを表示しています。3.2 showFromRectから利用可能なactiosheetを表示するにはポップオーバーが必要です。 –

答えて

1

はそれであなたのactionsheetと1つのビューを取ることです。
このようなポップオーバーのビューをロードする....

NSSet *allTouches = [event allTouches]; 
UITouch *touch = [[allTouches allObjects] objectAtIndex:0]; 
CGPoint p = [touch locationInView:self.view]; 


if(popoverController) 
    [popoverController dismissPopoverAnimated:YES]; 

popOverController *obj_popOverController = [[popOverController alloc] initWithNibName:@"popOverController" bundle:nil]; 
UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:obj_popOverController]; 
popoverController = [[UIPopoverController alloc] initWithContentViewController:navController]; 
[popoverController setPopoverContentSize:CGSizeMake(320.0, 320.0)]; 
[popoverController presentPopoverFromRect:CGRectMake(p.x, p.y, 10, 10) inView:self.view permittedArrowDirections:UIPopoverArrowDirectionUp | UIPopoverArrowDirectionDown animated:YES]; 
[navController release]; 
関連する問題