كيفية تحويل شريط التنقل ووحدة التحكم في التنقل إلى الوضع الأفقي

StackOverflow https://stackoverflow.com/questions/601397

  •  03-07-2019
  •  | 
  •  

سؤال

أقوم بتطوير لعبة أستخدم فيها الوضع الأفقي ولدي إجمالي 4 مشاهدات.هناك طريقتان قادمتان بشكل صحيح في الوضع الأفقي.ولكن في العرض الثالث لدي UITable وشريط التنقل.يمكنني تدوير الجدول في الوضع الأفقي ولكن لا أستطيع تحويل شريط التنقل ووحدة التحكم في التنقل.يحتوي شريط التنقل ووحدة التحكم في التنقل أيضًا على زر.كما أنها لا تتحول.لذلك يمكن لأي شخص أن يكون لديه الحل في هذا الشأن.:)

هل كانت مفيدة؟

المحلول

قم بتحويل شريط التنقل الخاص بوحدة التحكم في الملاحة عن طريق تدويره بزاوية 90 درجة.قد تحتاج أيضًا إلى تعيين مركز شريط التنقل والإطار لوضع العرض المناسب لتناسب وضع المناظر الطبيعية .. لقد عملت بالنسبة لي :) آمل أن يساعدك ذلك أيضًا.

نصائح أخرى

#define degreesToRadians(x) (M_PI * x / 180.0)

- (void)viewWillAppear:(BOOL)animated
{

    [[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationLandscapeRight];

    CGRect newBounds = CGRectMake(0, 0, 480, 320);
    self.navigationController.view.bounds = newBounds;
    self.navigationController.view.center = CGPointMake(newBounds.size.height / 2.0, newBounds.size.width / 2.0);

    self.navigationController.view.transform = CGAffineTransformMakeRotation(degreesToRadians(90));

    [super viewWillAppear:animated];
}

- (void)viewWillDisappear:(BOOL)animated
{
    self.navigationController.view.transform = CGAffineTransformIdentity;
    self.navigationController.view.transform = CGAffineTransformMakeRotation(degreesToRadians(0));
    self.navigationController.view.bounds = CGRectMake(0.0, 0.0, 320.0, 480.0);

    [super viewWillDisappear:animated];
}

في فئة وثائق UIViewController:

التعامل مع التدويرات

خاصية توجيه الواجهة
- ينبغي AutorotateToInterfaceOrientation:
- عرض التذييل الدوار
- عرض رأس دوار
– willRotateToInterfaceOrientation:المدة:
– willAnimateFirstHalfOfRotationToInterfaceOrientation:المدة:
– willAnimateSecondHalfOfRotationFromInterfaceOrientation:المدة:
- didRotateFromInterfaceOrientation:

نأمل أن يكون هذا يساعدك أيضا.

أ.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top