2014-07-23 6 views
1

현재 주먹 범용 앱을 사용하고 있습니다. 나는 특별한 예외모두에게 XAML 사용 - Universal App

그래서 첫 번째 단계는 다음과 WP의 상태 표시 줄을 숨기는 것입니다 ...

을 위해 ... ...뿐만 아니라 libs와 사용을 모든 XAML 파일을 공유 할 수

#if WINDOWS_PHONE_APP 
#endif 

싶습니다

#if WINDOWS_PHONE_APP 
private async static void HideStatusBar() 
{ 
    Windows.UI.ViewManagement.StatusBar statusbar = Windows.UI.ViewManagement.StatusBar.GetForCurrentView(); 
    await statusBar.HideAsync(); 
} 
#endif 

하지만 작동하지 않습니다.

공유 프로젝트에는 참조 폴더가 없습니다. 그것은 일반적으로 공유 프로젝트 내의 xaml에 대한 Windows 및 Windows 전화 프로젝트의 참조 폴더에서 요소를 사용할 수 있습니까. 그렇지 않으면 각 플랫폼마다 별도의 xaml 파일을 사용해야합니까?

답변

1

내가 알고있는 한 Universal 앱의 경우 DataModel 및 이미지 등의 다른 파일 만 공유 할 수 있습니다. 그러나 설계는 별도로 수행해야합니다. 즉 : xaml 페이지를 별도로 정의해야한다고 말했기 때문입니다. 더이를 참조하십시오

:

http://msdn.microsoft.com/en-us/library/windows/apps/dn609832.aspx

http://channel9.msdn.com/Series/Building-Apps-for-Windows-Phone-8-1/22

는 희망이 도움이!

+0

이 경우 프런트 엔드 코드의 95 %가 동일합니다. 많은 copy'n'Paste는 정말로 멋지지 않다. 반응 형 웹 사이트를 코딩하는 것과 비슷해야합니다. – user3168511

+0

나도 동의합니다. 그러나 불행히도 그것의 경우. – Kulasangar

0

이 답변에서 공유 프로젝트는 공유 참조를 가질 수 없습니다 ... 대상으로하는 각 프로젝트 '머리'에 참조를 추가해야합니다. 왜 당신의 코드가 작동하지 않는지에 관해서는, 당신은 그 함수가 어디에서 호출되는지 분명하지 않습니다. 그것은 옳은 것처럼 보이지만 HideStatusBar를 호출하는 사람 또는 어떻게 작동하지 않는지 나타냅니다.

0

하나의보기 (XAML 파일)를 사용할 수 있으며 때로는 의미가 있습니다. 예 : http://www.wintellect.com/devcenter/jprosise/sharing-views-in-universal-apps을 참조하십시오.

방금 ​​유니버설 응용 프로그램을 만들고 공유 프로젝트에 MainPage.xaml을 옮기고 Windows 8.1 및 Windows Phone 8.1 프로젝트에서이 응용 프로그램을 삭제했습니다.

나는 상태 표시 줄을 숨기하지만 내 그리드의 열 정의를 변경하는

#if WINDOWS_PHONE_APP 
ColumnDefinition1.Width = new Windows.UI.Xaml.GridLength(0); 
#endif 

를 사용하지 않았다.

관련 문제