如何动态锁定ios Native应用程序的方向

时间:2014-02-22 14:01:27

标签: ios

我是IOS中Objective c Native编码的新手。我有两个按钮。一个用于将应用程序锁定为纵向,另一个用于锁定横向方向。我该怎么做才能做到这一点。锁定在某种意义上它会固定在锁定的一侧并且不会转动。

2 个答案:

答案 0 :(得分:0)

例如这样:

    [[UIApplication sharedApplication] setStatusBarOrientation:UIDeviceOrientationLandscapeLeft animated:NO];

答案 1 :(得分:0)

是的,我使用了一种方法来实现相同的使用我在工作灯中创建的ios插件(对于混合应用程序)。

设置标志的功能是

#import "HelloworlPlugin.h"

@implementation HelloworlPlugin

int count=0;



-(void)sayhello:(NSMutableArray *)arguments withDict:(NSMutableDictionary *)option
{
    [arguments pop];
    NSString *responseString=[NSString stringWithFormat:@"%@",[arguments objectAtIndex:0]];

 if([responseString isEqualToString:@"1"])
 {
     count=1;
 }
    else
    {
        count=0;
    }
    NSLog(@"Zero %@",responseString);
}

-(int)count1
{
    NSLog(@"count= %d",count);
    if(count<1)
    {

        Cv=0;
    }
    else
    {
        Cv=1;
    }

    NSLog(@"%d",Cv);
    return Cv;


}

@end

在hello函数中,我从混合应用程序中获取参数并基于此我将标志变量Cv设置为1或0。

以下是我做了一些改变的默认方法

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    HelloworlPlugin *object=[[HelloworlPlugin alloc] init];

    int fValue=[object count1];

    NSLog(@"%d",fValue);
    if(fValue==1)
    {
    return (interfaceOrientation ==UIInterfaceOrientationPortrait);

    }
    else
    {
        return true;
    }
}

shouldAutorotateToInterfaceOrientation

是一个默认函数,基于该默认函数设置方向返回true设置所有方向,通过给出approriate方向,我们可以设置答案。所以这里基于我存储在fValue中的cv值,我锁定了取向。