当前位置: 首页>>代码示例>>C#>>正文


C# UIViewController.BeginInvokeOnMainThread方法代码示例

本文整理汇总了C#中UIViewController.BeginInvokeOnMainThread方法的典型用法代码示例。如果您正苦于以下问题:C# UIViewController.BeginInvokeOnMainThread方法的具体用法?C# UIViewController.BeginInvokeOnMainThread怎么用?C# UIViewController.BeginInvokeOnMainThread使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在UIViewController的用法示例。


在下文中一共展示了UIViewController.BeginInvokeOnMainThread方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Initialize

		/// <summary>
		/// Initialize the binding manager for a view controller.
		/// </summary>
		/// <param name="bindings">The binding manager for this view.</param>
		/// <param name="controller">The view controller for this view.</param>
		public static void Initialize (this BindingManager bindings, UIViewController controller)
		{
			UpdateScheduler.Initialize (a =>
				controller.BeginInvokeOnMainThread (new Action(a)));
		}
开发者ID:MrXemiu,项目名称:Assisticant.Starter,代码行数:10,代码来源:BindingManagerExtensions.cs

示例2: Login

		/// <summary>
		/// Starts the login process.
		/// </summary>
		public void Login(UIViewController parent, bool animate)
		{
			switch (Config.Network)
			{
				case SocialNetwork.Facebook:
					{
						var config = (FacebookConfig)Config;
						var authorizor = new FacebookAuthorizationViewController(config.AppID,
#if true // fel
							config.Permissions, FbDisplayType.Popup);
#else
							config.Permissions, FbDisplayType.Touch);
#endif
				
						authorizor.AccessToken += delegate(string accessToken, DateTime expires) {
							try
							{
								var wc = new System.Net.WebClient();
								var result = wc.DownloadData("https://graph.facebook.com/me?access_token="+accessToken);
								var stream = new MemoryStream(result);						
								var jsonArray = (System.Json.JsonObject)System.Json.JsonObject.Load(stream);
								string username = jsonArray["name"].ToString().Replace("\"", "");
								this.UserId = jsonArray["id"].ToString().Replace("\"", "");
								this.AccessToken = accessToken;
								this.Username = username;
#if true // fel
								this.ExpirationDate = expires;
#endif
								parent.BeginInvokeOnMainThread(delegate{
									parent.DismissModalViewControllerAnimated(animate);
									OnSuccess();
								});
							}
							catch (Exception ex)
							{
								OnFailure();
							}
						};
				
						authorizor.Canceled += delegate {
							OnFailure();
						};
				
						authorizor.AuthorizationFailed += delegate {
							OnFailure();
						};
				
						parent.BeginInvokeOnMainThread(delegate{
							parent.PresentModalViewController(authorizor,animate);
						});
					}
					break;
				case SocialNetwork.Twitter:
					{
						var config = (TwitterConfig)Config;
						var authorizor = new TweetStation.OAuthAuthorizer(new TweetStation.OAuthConfig(){
							ConsumerKey = config.ConsumerKey,
							ConsumerSecret = config.ConsumerSecret,
							Callback = config.Callback,
							RequestTokenUrl = "https://api.twitter.com/oauth/request_token",
							AccessTokenUrl = "https://api.twitter.com/oauth/access_token",
							AuthorizeUrl = "https://api.twitter.com/oauth/authorize"
						});
						parent.BeginInvokeOnMainThread(delegate {
							authorizor.AcquireRequestToken();
							authorizor.AuthorizeUser(parent,delegate(){
								if (authorizor.AccessScreenname != "")
								{
									this.Username = authorizor.AccessScreenname;
									this.AccessToken = authorizor.AccessToken;
									this.AccessTokenSecret = authorizor.AccessTokenSecret;
									OnSuccess();
								}
								else
								{
									OnFailure();
								}
							});
						});
					}
					break;
			}
		}
开发者ID:21Off,项目名称:21Off,代码行数:86,代码来源:SocialLogin.cs


注:本文中的UIViewController.BeginInvokeOnMainThread方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。