Your SlideShare is downloading. ×
  • Like
03 wp7   application bar
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

03 wp7 application bar

  • 530 views
Published

 

Published in Technology , Business
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
530
On SlideShare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
3
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • 所有应用程序必须要有一个根Phone Frame可以从它继承自定义
  • 在创建之前一定要先在Reference里加入Microsoft.Phone.shell,并且在xaml页面加上xmlns:shell=”clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone.Shell”.菜单栏设计最佳实践在设计菜单栏时要考虑的有以下几点:* 利用系统提供的菜单栏而非自己创建的菜单系统。这样能够使设备上所有应用程序保持统一的用户体验。而且系统提供的菜单栏支持动画和屏幕变换。* 用系统默认的主题而非自定义的颜色。使用自定义颜色会影响图标按钮和菜单动画的效果,而且在某些显示设置下会更耗电。* 菜单栏的透明度可以任意调整,但这里推荐只使用0,0.5和1。* 如果菜单栏的透明度小于1,当前显示页面大小会和屏幕大小一样,菜单栏会遮在它上面。如果透明度为1,显示页面会自动改变大小以适应未被菜单栏遮住的区域。图标按钮设计最佳实践* 用作图标的图片应该是使用了a通道的图片,其背景色为透明,前景色为白色。菜单栏会根据系统主题样式来改变图标的颜色。如果使用了带有背景色的图片,会导致不可预知的问题。* 图标按钮上的圆圈是在运行时由菜单栏加上去的,不需要在源图片里添加圆圈。* 用作图标的图片大小应该是48x48像素。图片内容的大小应该不超出26x26像素的范围,这样才不会被菜单栏加上的圆圈遮住。* 不要设置后退按钮。因为设备上的后退按钮就是专门指定用于页面后退的。* 把最常用的功能设置在图标按钮上。如果某些功能用图标不容易理解,就考虑用菜单项。* 图标按钮上的图片退便在转屏时不要有歧义。* 可以直接用于你的程序中的图标可以从这里下载。 菜单项设计最佳实践* 避免使用超过5个的菜单项,否则用户必须滚动屏幕才能看到。* 在单个菜单项中避免使用过长的文字,否则会引起截断。推荐菜单项内容长度为14到20个英文字符之间。* 为保证良好的用户体验,所有的菜单项和图标按钮的文字都会被变成小写字符。
  • Silverlight on Windows Phone基于页面导航模型与Web页面模型相似通过URI标识每个页面每个页面是无状态的
  • 当Page1切换到Page21.Page1执行OnNavigatingFrom2.Page1执行OnNavigatedFrom3.Page2执行OnNavigateToOnNavigatingFrom当Page不再是活动页面前OnNavigatedFrom当Page不再是活动页面时OnNavigatedTo当Page被激活时

Transcript

  • 1. Windows Phone 7
    Li Jingnan / Wang Tao
    2011-7-15
    1
  • 2. 2 days
    2
  • 3. about
    anytao| Ethos
    <ethos:Member
    id = “Wang Tao”
    msn = anytao@live.com
    weibo = http://weibo.com/anytao
    runat = “Senior System Architect”
    />
    Jason | Ethos
    <ethos:Member
    id = “Li Jingnan”
    msn = zengnami@hotmail.com
    weibo= http://weibo.com/jn1981
    runat = “SE”
    />
  • 4. about
    http://book.anytao.net
  • 5. 03 application bar
    Wang Tao / 2011-07-15
  • 6. session outline
    application bar
    navigation
    overview
    frame & page
    application bar
    overview
    page navigation
    methods
    query string
    goback
  • 7. navigations
    7
  • 8. frame & page
    PhoneApplicationFrame
    Top Container: PhoneApplicationFrame
    Including:
    Page control
    System Tray
    Application Bar
    PhoneApplicationPage
    Fill content of Frame
    Page inherit from PhoneApplicationPage
    Including:
    Title
    Application Bar
    8
  • 9. ApplicationBar
    use ApplicationBar instead of creating you own menu system
    ApplicationBarIconButton
    up to 4buttons
    don’t fill all 4 slots if not need
    size: 48×48
    ApplicationBarMenuItem
    up to 5 menus
    avoid long text
    9
  • 10. Application Bar in xaml
    10
  • 11. ApplicationBar and Landscope
    11
  • 12. Application Bar opacity
    12
  • 13. page navigation
    13
    Silverlight on Windows Phone
    Similar like web page
    Navigate by URI
    Stateless
    private void hyperlinkButton1_Click
    (object sender, RoutedEventArgs e)
    {
    NavigationService.Navigate(
    new Uri("/SecondPage.xaml", UriKind.RelativeOrAbsolute));
    }
  • 14. navigation method
    OnNavigatingFrom
    OnNavigatedFrom
    OnNavigatedTo
    14
  • 15. query string
    send query string
    private void passParam_Click(object sender, RoutedEventArgs e)
    {
    NavigationService.Navigate(new Uri("/SecondPage.xaml?msg=" + textBox1.Text, UriKind.Relative));
    }
    get query string
    protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
    {
    base.OnNavigatedTo(e);
    string msg = string.Empty;
    if (NavigationContext.QueryString.TryGetValue("msg", out msg))
    textBlock1.Text = msg;
    }
    15
  • 16. go back
    private void button1_Click
    (object sender, RoutedEventArgs e)
    {
    NavigationService.GoBack();
    }
    16
  • 17. navigate in UserControl
    17
  • 18. demo
    18
    / app bar
    / app bar menu
    / landscape
    / navigation service
    02 application bar
  • 19. practice
    19
    build your context menu
  • 20. 20
    thank youwww.anytao.com
  • 21. 21