a4e9y47
V2EX  ›  Android

关于 Material Design 的一些问题

  •  
  •   a4e9y47 · Mar 1, 2016 · 14517 views
    This topic created in 3757 days ago, the information mentioned may be changed or developed.
    新学 Android 没多久,就想用用最近比较火的 Material Design 来设计个 app 。一般带侧滑栏的 app 主页面部分(除去侧滑栏)大多用 fragment 控制吗还是单单放在 activity 上比较好?有没有相关的开源 app 可以供参考?愁死我啦...
    10 replies    2016-03-03 23:57:42 +08:00
    Drops
        1
    Drops  
       Mar 1, 2016   ❤️ 1
    开源的有用 fragment 也有用 activity 的,你直接搜索 navigation drawer 就能搜出一些开源的 app , Google IO2015 也是用的侧滑,可以看看,我也需要关注这个问题,也是刚学,我遇到的问题是,跳转后的界面无法侧滑返回,而我自己设计的是应该返回的,可能写个模板 activity ,其他跳转页面继承就可以,还没来得及试试
    scarlex
        2
    scarlex  
       Mar 1, 2016   ❤️ 1
    https://github.com/scarletsky/Bangumi-Android
    自己写的,给你参考下。
    yuriko
        3
    yuriko  
       Mar 1, 2016   ❤️ 1
    MD 只是一个设计规范(包扩 UIUX )罢了,并不是实现标准。我还以为是个讨论设计的帖子呢。

    fragment 和 activity 在语义上不同, activity 有栈概念,一层层展开,返回时一层层返回;而 fragment 则是对 activity 的扩展,比如某一层在不同情况下显示不同,或者某层内部的界面跳转,返回时不需要再停留在这一级等等。

    侧滑菜单关键是是 drawer ,原生控件有,似乎并不是很好用(研究 MD 细节会发现,谷歌自己对这玩意的语义也有出入)
    Shunix
        4
    Shunix  
       Mar 1, 2016   ❤️ 1
    Activity 在 AMS 调度的时候耗时比较长,建议换成 fragment ,在 app 结构比较复杂的时候可以显著提升性能
    a4e9y47
        5
    a4e9y47  
    OP
       Mar 1, 2016
    @Drops 谢谢, navigation drawer 好像官方的支持库里就有..现在想找个 FloatingActionButton 点击出菜单的支持库请问有推荐吗?
    a4e9y47
        6
    a4e9y47  
    OP
       Mar 1, 2016
    @scarlex 谢谢我看看
    @yuriko 谢谢 我受益匪浅 按用途分别用 我再看看相关的例子
    @Shunix 谢谢 fragment 还不太熟~
    Drops
        7
    Drops  
       Mar 1, 2016
    yuriko
        8
    yuriko  
       Mar 1, 2016
    @a4e9y47 Java 体系里面有一个很有趣的事情,很多东西不只是说告诉你怎么用,有什么用……还有一套,应该怎么写……规范这东西 Java 特别多
    a4e9y47
        10
    a4e9y47  
    OP
       Mar 3, 2016
    @justzerock 太感谢你了!!!!!!!
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2499 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 15:56 · PVG 23:56 · LAX 08:56 · JFK 11:56
    ♥ Do have faith in what you're doing.