2016-11-25 2 views
0

내 Xamarin PCL 앱에서 하이브리드 웹보기를 구현했습니다.탐색 페이지 Xamarin 양식을 사용하는 C#의 예외

앞서 언급 한 하이브리드 웹보기에서 JavaScript를 사용하여 Html 페이지에서 C# 함수를 호출합니다.

문제는 내 함수가 호출되었지만이 함수에서 리디렉션하려고하면 예외가 throw됩니다.

Android.Util.AndroidRuntimeException : 견해를 터치 도면 계층을 생성

은 원래의 스레드.

at System.Runtime.ExceptionServices.ExceptionDispatchInfo 다음과 같이

내 코드는 다음과 같습니다 당신이 배경 스레드에서 UI를 업데이트하려는처럼

var isValid = AreCredentialsCorrect(user); 

if (isValid) 
{ 
    try 
    { 
     await Navigation.PushAsync(new UserDashboard("local.html?auth_admin=true")); 

    } 
    catch { } 

} 

public UserDashboard(string uriname) 
{ 
    InitializeComponent(); 

    hybridWebView.Uri = uriname; 

    hybridWebView.RegisterAction(data => userLogin(data)); 

} 

답변

1

는 소리. 메인 스레드에서 탐색을 시도하십시오.

Device.BeginInvokeOnMainThread(async() => await Navigation.PushAsync(new UserDashboard("local.html?auth_admin=true")));