1

iOSに関する解決済みの質問がたくさんあることは知っていますが、誰もUIDeviceOrientation私のために働いてくれませんでした。Widgetランドスケープモードで中央にラベルを作りたいです。

[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];
if (([[UIDevice currentDevice] orientation] == UIDeviceOrientationLandscapeLeft) ||
    ([[UIDevice currentDevice] orientation] == UIDeviceOrientationLandscapeRight))
{
     d = 516; //my var to change the Position (The Value is just a test)
}

そして、これは何らかの理由で私にはうまくいきません...

前もって感謝します。

4

1 に答える 1

0

今日、ウィジェットでこれを理解しました。メソッドを定義する

- (void)willAnimateRotationToInterfaceOrientation:(int)arg1

あなたのAppControllerのために。内部では、arg1 がどの向きに対応しているかを確認します

if (UIInterfaceOrientationIsLandscape(arg1)) {
    // you're in landscape mode
    float screenWidth = [UIScreen mainScreen].bounds.size.height;
}
else {
    // you're in portrait mode
    float screenWidth = [UIScreen mainScreen].bounds.size.width;
}

私のファイルでこれの私の実装を見ることができますhere . WeeFacebookのコードを見て、それを理解しました。

于 2013-03-16T08:35:43.467 に答える