본문 바로가기

프로그래밍/C# MonoTouch (IOS)

기본 UIViewController Code 와 LifeCycle

우선 프로젝트 솔루션 생성후 생성되어지는 UIViewController 소스를 살펴보도록 하겠습니다.

using System;
using System.Drawing;

using MonoTouch.Foundation;
using MonoTouch.UIKit;

namespace Xamarin
{
	public partial class XamarinViewController : UIViewController
	{
		public XamarinViewController () : base ("XamarinViewController", null)
		{
		}

		/*
		* DidReceiveMemoryWarning 메소드는, 메모리 오류가 발생시 호출된다.
		*/

		public override void DidReceiveMemoryWarning ()
		{
			base.DidReceiveMemoryWarning ();
		}
		
		/*
		* ViewDidLoad 메소드는, ViewController 이 생성되고 화면에 보여지는 시점에 호출된다.
		*/

		public override void ViewDidLoad ()
		{
			base.ViewDidLoad ();
		}
		
		/*
		* ShouldAutorotateToInterfaceOrientation 메소드는, 컨트롤러의 회전에 대한 처리를 담당한다.
		*/

		public override bool ShouldAutorotateToInterfaceOrientation (UIInterfaceOrientation toInterfaceOrientation)
		{
			return (toInterfaceOrientation != UIInterfaceOrientation.PortraitUpsideDown);
		}
	}
}

위와 같이 기본적으로 UIViewController 를 생성할때, 기본적으로 위와같이 소스코드가 자동으로 생성되어 집니다.


여기서 가장 중요한건, 생성자 부분과 ViewDidLoad 라는 메소드 부분 입니다.


호출 시점이, 해당 XamarinViewController 라는 클래스의 객체를 생성할때,


먼저 생성자가 불러지게 되고, 그 이후 화면에 View가 로드 될때  ViewDidLoad 메소드가 호출이 됩니다.



UIViewController 의 LifeCycle 은 다음과 같습니다.