SlideShare a Scribd company logo
http://windows.Microsoft.com
Developer’s guide to Windows 10
조막만한 화면부터 대박만한 화면까지
고생 끝 적응( ) 시작
권영철 / MVP + 바이널아이
!Adaptive UI
Phone Small Tablet
2-in-1s
(Tablet or Laptop)
Desktops
& All-in-OnesPhablet Large Tablet
Classic
Laptop
Xbox IoTSurface Hub Holographic
Windows 10
http://windows.Microsoft.com
Agenda
Adaptive UI는?
Adaptive UI를 위한 도구
Agenda
Adaptive UI 이야기
http://windows.Microsoft.com
(반응)
http://windows.Microsoft.com
(적응)
http://windows.Microsoft.com
(확대/축소)
http://windows.Microsoft.com
Tailored design(맞춤)
특별한 장치에는 특별한 경험을(그에 걸맞는)
Phone (portrait)
Tablet (landscape) / Desktop
http://windows.Microsoft.com
Tailored(맞춤)
각각 따로따로, 완전히 분리
Use MRT in App.xaml.cs to determine the family
한 손 인터페이스?
Typically phone or small tablets
Test diagonal screen size (<7")
if (physical_diagonal_size <= 7)
// optimized for one-handed operation
rootFrame.Navigate(typeof(MainPage_OneHanded), e.Arguments);
else
rootFrame.Navigate(typeof(MainPage), e.Arguments);
Multi-headed solution?
다행히 살아 남았습니다.
http://windows.Microsoft.com
특정 타깃을 집중 공략하는 앱 솔루션
Adaptive UI를 위한 도구
http://windows.Microsoft.com
Visual States
XAML 뷰를 정의
Unique layout for distinct states
Animation은 심플하게
Automatically implement state transitions
모든 건 Blend for VS를 이용해서
Design and preview states and transitions
http://windows.Microsoft.com
Visual States
http://windows.Microsoft.com
http://windows.Microsoft.com
Visual States
http://windows.Microsoft.com
Visual States
http://windows.Microsoft.com
Visual States
DEMO
Visual states
Visual states
View의 변화를 책임집니다.
DEMO
Visual States Manager
http://windows.Microsoft.com
How to set the visual state
VisualStateManager.GotoState(element, state, transition)
public MainPage()
{
this.InitializeComponent();
this.SizeChanged += (s, e) =>
{
var state = "VisualState000min";
if (e.NewSize.Width > 500)
state = "VisualState500min";
else if (e.NewSize.Width > 800)
state = "VisualState800min";
else if (e.NewSize.Width > 1000)
state = "VisualState1000min";
VisualStateManager.GoToState(this, state, true);
};
}
DEMO
Adaptive triggers
Adaptive triggers
이거 하나면 코드가 필요없습니다.
http://windows.Microsoft.com
Adaptive triggers
코드 몰라도 상태 변경 가능
기본 제공되는 트리거가 2개
MinWindowHeight (Taller than this)
MinWindowWidth (Wider than this)
<VisualState x:Name="VisualState500min">
<VisualState.StateTriggers>
<AdaptiveTrigger MinWindowWidth="501" />
</VisualState.StateTriggers>
</VisualState>
DEMO
Custom triggers
Custom triggers
별의별 시나리오를 싹다 지원합니다.
http://windows.Microsoft.com
WindowsStateTriggers
A collection of custom visual state triggers
Morten Nielsen, MVP + community
GitHub, MIT license
Based on StateTriggerBase class
https://github.com/dotMorten/WindowsStateTriggers
http://www.sharpgis.net/post/2015/03/24/Using-Custom-Visual-State-Triggers
http://windows.Microsoft.com
WindowsStateTriggers
DeviceFamilyStateTrigger
NetworkConnectionStateTrigger
OrientationStateTrigger
IsTrueStateTrigger (IsActive)
IsFalseStateTrigger
IsNullOrEmptyStateTrigger
IsTypePresentStateTrigger
EqualsStateTrigger
NotEqualStateTrigger
CompareStateTrigger
InputTypeTrigger
RegexStateTrigger
ComposisiteStateTrigger
…
Currently available triggers
http://windows.Microsoft.com
Visual state setters
Scalar 값을 설정하는데 사용
Great when you think of ENUM values like Visibility, Stretch, etc
Storyboard를 호출하지 않음
Does not require ObjectAnimationUsingKeyFrames
<VisualState.Setters>
<Setter Target="MyText01.FontSize" Value="24" />
<Setter Target="MyImage.Stretch" Value="UniformToFill" />
<Setter Target="MyImage.Height" Value="150" />
</VisualState.Setters>
http://windows.Microsoft.com
XAML's RelativePanel control
하위 요소 또는 두 행위가 앵커 역할을 담당
They are relative to the panel
그 앵커를 기준으로 다른 요소들을 정의
RelativePanel.Above = "ElementName"
RelativePanel.RightOf = "ElementName"
RelativePanel.Below = "ElementName"
RelativePanel.LeftOf = "ElementName"
Adaptive UI를 쉽게 표현
A simple Visual State setter can rearrange the UI
One element can move a family of related elements
DEMO
Relative Panel
Adaptive UI
선택이 아닌 필수입니다.
http://windows.Microsoft.com
Review
Adaptive UI는?
Adaptive UI를 위한 도구
Review
http://windows.Microsoft.com
ReviewSource
https://channel9.msdn.com/Series/A-Developers-Guide-to-Windows-10
http://www.microsoftvirtualacademy.com/training-courses/a-
developers-guide-to-windows-10
Source
http://windows.Microsoft.com
ReviewSourceSource
http://windows.Microsoft.com
Review광고
kaki104@daum.net
권영철
zerosteeler@outlook.com
010-4522-8103
감사합니다.
• MSDN Forum http://aka.ms/msdnforum
• TechNet Forum http://aka.ms/technetforum
http://aka.ms/td2015_again
TechDays Korea 2015에서 놓치신 세션은
Microsoft 기술 동영상 커뮤니티 Channel 9에서
추후에 다시 보실 수 있습니다.

More Related Content

PDF
[Td 2015]windows 10 엔터프라이즈 시나리오 part I 배포 및 이미징(박성기)
PDF
How To Connect Hardware To Device Emulatorx
PPTX
PDF
Cyanogen Platform SDK
PPTX
Develop a Windows 10 App. Deploy it on PC, Phone and Raspberry Pi.
PPTX
SG Android Devs Meetup July 2013
PPT
Android Internal Services
[Td 2015]windows 10 엔터프라이즈 시나리오 part I 배포 및 이미징(박성기)
How To Connect Hardware To Device Emulatorx
Cyanogen Platform SDK
Develop a Windows 10 App. Deploy it on PC, Phone and Raspberry Pi.
SG Android Devs Meetup July 2013
Android Internal Services

What's hot (10)

PPTX
Windows 10 Deployment with Microsoft Deployment Toolkit
PDF
Android OTA updates
PPTX
Cerebro for vfx eng
PPT
Learning AOSP - Android Linux Device Driver
PPTX
從 Google i/o 2015 看下半年 mobile 應用發展趨勢
KEY
Trendmicro Security Award 2012 Final Presentation
ODP
What to do after Rooting ?
PPTX
Intro google-android
PDF
IzPack - PoitouJUG
PDF
Hacking with x86 Windows Tablet and mobile devices on Debian #debconf18
Windows 10 Deployment with Microsoft Deployment Toolkit
Android OTA updates
Cerebro for vfx eng
Learning AOSP - Android Linux Device Driver
從 Google i/o 2015 看下半年 mobile 應用發展趨勢
Trendmicro Security Award 2012 Final Presentation
What to do after Rooting ?
Intro google-android
IzPack - PoitouJUG
Hacking with x86 Windows Tablet and mobile devices on Debian #debconf18
Ad

Viewers also liked (14)

PDF
Reconocimiento al deportista Pablo Crer
PPTX
Ppt for wa
PPT
Kaya Fiziği ve Rezervuar Tahmini
PDF
Success a comprehensive guide sample
DOCX
NILAI KOREKSI UAS-1
DOCX
Brionne Thome Curriculum Vitae 2015
PPTX
Quentin Tarantino
DOCX
lavanyaresume_retail designer
PDF
Reconocimiento a los deportistas Cecilia Carranza Saraoli y Santiago Lange
PPTX
Presentation1
PDF
FANRPAN National Policy Dialogue Programme - Mauritius
PPTX
Python Network Programming
PDF
추천서비스고군분투기 On Aws - 박진우 (레코벨)
Reconocimiento al deportista Pablo Crer
Ppt for wa
Kaya Fiziği ve Rezervuar Tahmini
Success a comprehensive guide sample
NILAI KOREKSI UAS-1
Brionne Thome Curriculum Vitae 2015
Quentin Tarantino
lavanyaresume_retail designer
Reconocimiento a los deportistas Cecilia Carranza Saraoli y Santiago Lange
Presentation1
FANRPAN National Policy Dialogue Programme - Mauritius
Python Network Programming
추천서비스고군분투기 On Aws - 박진우 (레코벨)
Ad

Similar to [Td 2015]조막만한 화면에서 대박만한 화면까지. 고생 끝 적응(adaptive ui) 시작(권영철) (20)

PDF
20150912 Adaptive UI 권영철
PDF
조막만한 화면부터 대박만한 화면까지 고생 끝 적응(Adaptive UI) 시작! - TechDays Korea 2015
PPTX
Developing windows 10 universal apps
PDF
DotNet Cologne 2015 - Windows 10 AppDev, Teil3: Schönes für Entwickler - (Dan...
PPTX
A Special Introduction to the Upcoming InduSoft Web Studio 8.0
PPTX
What's New In InduSoft Web Studio 8.0 +SP1
PPTX
Deeper into Windows 10 Development
PPT
Mobile Java
PPTX
Security best practices for hyper v and server virtualisation [svr307]
PDF
Rock-solid Magento Deployments (and Development)
PPT
Busy Developer's Guide to Windows 8 HTML/JavaScript Apps
PPTX
Internet Explorer 8 Developer Overview
PPTX
Inside Wijmo 5 - GrapeCity Echo 2016
PPTX
Windows service best practice
PPT
Windows Mobile 7 Development
PPT
SWT - Technical Deep Dive
PPTX
AISEC 12 april 2012 Introduction to Windows Embedded Handheld programming
PPTX
Windows Phone 8.1 アプリ開発徹底解説
PPTX
20141216 멜팅팟 부산 세션 ii - cross platform 개발
PPT
android training_material ravy ramio
20150912 Adaptive UI 권영철
조막만한 화면부터 대박만한 화면까지 고생 끝 적응(Adaptive UI) 시작! - TechDays Korea 2015
Developing windows 10 universal apps
DotNet Cologne 2015 - Windows 10 AppDev, Teil3: Schönes für Entwickler - (Dan...
A Special Introduction to the Upcoming InduSoft Web Studio 8.0
What's New In InduSoft Web Studio 8.0 +SP1
Deeper into Windows 10 Development
Mobile Java
Security best practices for hyper v and server virtualisation [svr307]
Rock-solid Magento Deployments (and Development)
Busy Developer's Guide to Windows 8 HTML/JavaScript Apps
Internet Explorer 8 Developer Overview
Inside Wijmo 5 - GrapeCity Echo 2016
Windows service best practice
Windows Mobile 7 Development
SWT - Technical Deep Dive
AISEC 12 april 2012 Introduction to Windows Embedded Handheld programming
Windows Phone 8.1 アプリ開発徹底解説
20141216 멜팅팟 부산 세션 ii - cross platform 개발
android training_material ravy ramio

More from Sang Don Kim (20)

PDF
[Td 2015] 국내에서 처음으로 선보이는 microsoft 차세대 서버 운영 체제 windows server 2016
PDF
[TD 2015] windows server에서 만나보는 docker와 windows container(최한홍)
PDF
[TD 2015] Microsoft Azure IaaS v2(최정현)
PDF
[TD2015] 이 시대에 소규모 게임 개발팀이 마소와 함께 살아가는 방법(송용성)
PDF
[Td 2015]두근두근 asp.net 5(한상훈)
PDF
[Td 2015]windows 10 엔터프라이즈 시나리오 part II 보안 및 관리(권순만)
PDF
[Td 2015]함께하면 더 좋은 windows 10과 인텔 스카이레이크, 아키텍쳐와 인텔 그래픽스 최적화 살펴보기(하태동)
PDF
[Td 2015]프로그래밍 언어의 f1머신 c++을 타고 windows 10 uwp 앱 개발의 세계로~(유영천)
PDF
[Td 2015]틱틱대도 써야 하는 windows 10 앱 개발, c# tips &amp; tricks(송기수)
PDF
[Td 2015]치즈케이크 팩토리는 알겠는데, 데이터 팩토리는 뭔가요(한기환)
PDF
[Td 2015]알아두면 핵 이득! vc++로 안드로이드 개발하기(김성엽)
PDF
[Td 2015]박애주의 office 365, 멀티플랫폼과 사랑에 빠지다(최한홍)
PDF
[Td 2015]맨땅에 헤딩하고 터득한 스토어 공략법(돈벌기)(육주용)
PDF
[Td 2015]라즈베리파이에 windows 10 io t core 맛있게 발라 먹기(유정현)
PDF
[Td 2015]디버깅, 어디까지 해봤니 당신이 아마도 몰랐을 디버깅 꿀팁 공개(김희준)
PDF
[Td 2015]녹슨 c++ 코드에 모던 c++로 기름칠하기(옥찬호)
PDF
[Td 2015]너에게만 나는 반응해 반응형 응용프로그램(이규원)
PDF
[Td 2015]구름 위로 올려 어느 곳에서든 연결되는 서비스 azure 앱 서비스(이종인)
PDF
[Td 2015]각이 다른 mvc6! 그 여섯 번째 이야기!(최지훈)
PDF
[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)
[Td 2015] 국내에서 처음으로 선보이는 microsoft 차세대 서버 운영 체제 windows server 2016
[TD 2015] windows server에서 만나보는 docker와 windows container(최한홍)
[TD 2015] Microsoft Azure IaaS v2(최정현)
[TD2015] 이 시대에 소규모 게임 개발팀이 마소와 함께 살아가는 방법(송용성)
[Td 2015]두근두근 asp.net 5(한상훈)
[Td 2015]windows 10 엔터프라이즈 시나리오 part II 보안 및 관리(권순만)
[Td 2015]함께하면 더 좋은 windows 10과 인텔 스카이레이크, 아키텍쳐와 인텔 그래픽스 최적화 살펴보기(하태동)
[Td 2015]프로그래밍 언어의 f1머신 c++을 타고 windows 10 uwp 앱 개발의 세계로~(유영천)
[Td 2015]틱틱대도 써야 하는 windows 10 앱 개발, c# tips &amp; tricks(송기수)
[Td 2015]치즈케이크 팩토리는 알겠는데, 데이터 팩토리는 뭔가요(한기환)
[Td 2015]알아두면 핵 이득! vc++로 안드로이드 개발하기(김성엽)
[Td 2015]박애주의 office 365, 멀티플랫폼과 사랑에 빠지다(최한홍)
[Td 2015]맨땅에 헤딩하고 터득한 스토어 공략법(돈벌기)(육주용)
[Td 2015]라즈베리파이에 windows 10 io t core 맛있게 발라 먹기(유정현)
[Td 2015]디버깅, 어디까지 해봤니 당신이 아마도 몰랐을 디버깅 꿀팁 공개(김희준)
[Td 2015]녹슨 c++ 코드에 모던 c++로 기름칠하기(옥찬호)
[Td 2015]너에게만 나는 반응해 반응형 응용프로그램(이규원)
[Td 2015]구름 위로 올려 어느 곳에서든 연결되는 서비스 azure 앱 서비스(이종인)
[Td 2015]각이 다른 mvc6! 그 여섯 번째 이야기!(최지훈)
[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)

Recently uploaded (20)

PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PPTX
CHAPTER 2 - PM Management and IT Context
PPTX
ai tools demonstartion for schools and inter college
PPTX
L1 - Introduction to python Backend.pptx
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PPTX
Introduction to Artificial Intelligence
PPTX
Reimagine Home Health with the Power of Agentic AI​
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PDF
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
PDF
top salesforce developer skills in 2025.pdf
PDF
System and Network Administration Chapter 2
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
PTS Company Brochure 2025 (1).pdf.......
PDF
Softaken Excel to vCard Converter Software.pdf
PDF
Digital Strategies for Manufacturing Companies
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
CHAPTER 2 - PM Management and IT Context
ai tools demonstartion for schools and inter college
L1 - Introduction to python Backend.pptx
Operating system designcfffgfgggggggvggggggggg
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
Internet Downloader Manager (IDM) Crack 6.42 Build 41
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
Introduction to Artificial Intelligence
Reimagine Home Health with the Power of Agentic AI​
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
top salesforce developer skills in 2025.pdf
System and Network Administration Chapter 2
Which alternative to Crystal Reports is best for small or large businesses.pdf
Wondershare Filmora 15 Crack With Activation Key [2025
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PTS Company Brochure 2025 (1).pdf.......
Softaken Excel to vCard Converter Software.pdf
Digital Strategies for Manufacturing Companies

[Td 2015]조막만한 화면에서 대박만한 화면까지. 고생 끝 적응(adaptive ui) 시작(권영철)