ionic 列表


列表是一个应用广泛的界面元素,在所有移动app中几乎都会使用到。

列表可以是基本文字、按钮,开关,图标和缩略图等。

列表项可以是任何的HTML元素。容器元素需要list类,每个列表项需要使用item类。

ionList和ionItem可以很容易的支持各种交互方式,比如,滑动编辑,拖动排序,以及删除项。

基本用法:

  1. <ul class="list">
  2. <li class="item">
  3. ...
  4. </li>
  5. </ul>

列表分隔符

我们可以使用 item-divider 类来为列表创建分隔符,默认情况下,列表项以不同的背景颜色和字体加粗来区分,但你也可以很容易的定制他。

  1. <div class="list">
  2.  
  3. <div class="item item-divider">
  4. Candy Bars
  5. </div>
  6.  
  7. <a class="item" href="#">
  8. Butterfinger
  9. </a>
  10.  
  11. ...
  12.  
  13. </div>

带图标列表

我们可以在列表项的左侧或右侧指定图标。

使用 item-icon-left 图标在左侧, item-icon-right 设置图标在右侧。如果你需要在两边都有图标,则两个类都添加上即可。

以下实例中,我们在列表项中使用了 <a> 标签,使得每个列表项可点击。

列表项在使用 <a>或<button> 元素时,如果右侧未添加图标,则会自动添加上箭头号。

实例中,第一项只有左侧图标,第二项左右均有图标,第三项有右侧图标(还有注释 item-note),第四项有badge(标记)元素。

  1. <div class="list">
  2.  
  3. <a class="item item-icon-left" href="#">
  4. <i class="icon ion-email"></i>
  5. Check mail
  6. </a>
  7.  
  8. <a class="item item-icon-left item-icon-right" href="#">
  9. <i class="icon ion-chatbubble-working"></i>
  10. Call Ma
  11. <i class="icon ion-ios-telephone-outline"></i>
  12. </a>
  13.  
  14. <a class="item item-icon-left" href="#">
  15. <i class="icon ion-mic-a"></i>
  16. Record album
  17. <span class="item-note">
  18. Grammy
  19. </span>
  20. </a>
  21.  
  22. <a class="item item-icon-left" href="#">
  23. <i class="icon ion-person-stalker"></i>
  24. Friends
  25. <span class="badge badge-assertive">0</span>
  26. </a>
  27.  
  28. </div>

按钮列表

使用 item-button-right 或 item-button-left 类将按钮放在列表项中。

  1. <div class="list">
  2.  
  3. <div class="item item-button-right">
  4. Call Ma
  5. <button class="button button-positive">
  6. <i class="icon ion-ios-telephone"></i>
  7. </button>
  8. </div>
  9.  
  10. ...
  11.  
  12. </div>

带头像列表

使用 item-avatar 来创建一个带头像的列表:

  1. <div class="list">
  2.  
  3. <a class="item item-avatar" href="#">
  4. <img src="venkman.jpg">
  5. <h2>Venkman</h2>
  6. <p>Back off, man. I'm a scientist.</p>
  7. </a>
  8.  
  9. ...
  10.  
  11. </div>

缩略图列表

item-thumbnail-left 类用于添加左侧对齐的缩略图, item-thumbnail-right 类用于添加右侧对齐的缩略图。

  1. <div class="list">
  2.  
  3. <a class="item item-thumbnail-left" href="#">
  4. <img src="cover.jpg">
  5. <h2>Pretty Hate Machine</h2>
  6. <p>Nine Inch Nails</p>
  7. </a>
  8.  
  9. ...
  10.  
  11. </div>

内嵌列表(inset list)

我们可以在容器当中内嵌列表,列表不会显示完整的宽度。

内嵌列表的样式为:list list-inset,与常规列表区别是,它设置了外边距(marign),类似于选项卡。

内嵌列表是没有阴影效果的,滚动时效果会更好。

  1. <div class="list list-inset">
  2.  
  3. <div class="item">
  4. Raiders of the Lost Ark
  5. </div>
  6.  
  7. ...
  8.  
  9. </div>