ionic - 如何在sidemenu中创建小图标?

时间:2014-08-07 02:35:17

标签: angularjs ionic-framework

我从客户那里得到了一个设计。我想在我的sidemenu中嵌入小图标。

我当前的代码

<ion-side-menus>

  <ion-pane ion-side-menu-content>
    <ion-nav-bar class="bar-stable nav-title-slide-ios7">
      <ion-nav-back-button class="button-clear"><i class="icon ion-ios7-arrow-back"></i> Back</ion-nav-back-button>
    </ion-nav-bar>
    <ion-nav-view name="menuContent" animation="slide-left-right"></ion-nav-view>
  </ion-pane>

  <ion-side-menu side="left">
    <header class="bar bar-header bar-stable">
      <h1 class="title">Menu</h1>
    </header>
    <ion-content class="has-header">
      <ion-list>
        <ion-item nav-clear menu-close href="#/app/home">
          Home
        </ion-item>
        <ion-item nav-clear menu-close href="#/app/profile">
          Profile
        </ion-item>
        <ion-item nav-clear menu-close href="#/app/friend">
          Friends
        </ion-item>
        <ion-item nav-clear menu-close href="#/app/setting">
          Setting
        </ion-item>
        <ion-item nav-clear menu-close href="#/app/shop">
          Shop
        </ion-item>
      </ion-list>
    </ion-content>
  </ion-side-menu>
</ion-side-menus>

我的目标

enter image description here

5 个答案:

答案 0 :(得分:8)

我已经得到了答案

<ion-side-menus>

  <ion-pane ion-side-menu-content>
    <ion-nav-bar class="bar-stable nav-title-slide-ios7">
      <ion-nav-back-button class="button-clear"><i class="icon ion-ios7-arrow-back"></i> Back</ion-nav-back-button>
    </ion-nav-bar>
    <ion-nav-view name="menuContent" animation="slide-left-right"></ion-nav-view>
  </ion-pane>

  <ion-side-menu side="left">
    <header class="bar bar-header bar-stable">
    </header>
    <ion-content class="has-header mymenu">
      <ion-list>
        <ion-item nav-clear menu-close href="#/app/home">
            <img src="img/home.png" width="30" />Home </ion-item>
        <ion-item nav-clear menu-close href="#/app/profile">
            <img src="img/profile.png" width="30" />Profile </ion-item>
        <ion-item nav-clear menu-close href="#/app/friend">
          <img src="img/friend.png" width="30" ng-click="friend()"/>Friends
        </ion-item>
        <ion-item nav-clear menu-close href="#/app/setting">
          <img src="img/setting.png" width="30" />Setting
        </ion-item>
        <ion-item nav-clear menu-close href="#/app/shop">
          <img src="img/shop.png" width="30" ng-click="shop()"/>Shop
        </ion-item>
      </ion-list>
    </ion-content>
  </ion-side-menu>
</ion-side-menus>

答案 1 :(得分:5)

您所要做的就是在文本中添加所需的图标。以下是一个示例:http://plnkr.co/edit/KIErTU?p=preview

<ion-item>
    <i class='ion-checkmark-circled'></i>home
</ion-item>

没什么好看的,但它说明了这一点。

答案 2 :(得分:3)

<ion-item menu-close class="item-icon-left">
  <i class="icon ion-home" ></i>
  Home
</ion-item>

将班级item-icon-left添加到ion-item,以便很好地设置样式并对齐图标。

答案 3 :(得分:2)

以下是如何保持离子侧面菜单完好无损的情况。 这适用于离子2: -

app.component.js

  pages: Array<{
      title: string, 
      component: any , 
      icon: string, 
      class: string
  }>;

  constructor(public platform: Platform, public statusBar: StatusBar, public splashScreen: SplashScreen) {
    this.initializeApp();

    // used for an example of ngFor and navigation
    this.pages = [
      { 
        title: 'Home', 
        component: HomePage , 
        icon: '<i class="fa fa-pencil"></i>' , 
        class: 'class1' 
      },
      { 
        title: 'List', 
        component: ListPage , 
        icon: '<i class="fa fa-plus"></i>' , 
        class: 'class2' 
      },
      { 
        title: 'Login Page', 
        component: LoginPage , 
        icon: '<i class="fa fa-book"></i>' , 
        class: 'class3' 
      }
    ];

  }

app.html: -

  <ion-content>
    <ion-list>
      <button [ngClass]="p.class" menuClose ion-item *ngFor="let p of pages" (click)="openPage(p)">
        <span class="menu_item_icon" [innerHTML]="p.icon"></span>
        <span class="menu_item_title">
            {{p.title}}
        </span>

      </button>
    </ion-list>
  </ion-content>

我使用了包含sidemenu的离子默认样板文件。

是Angular2的新手。但我喜欢干净利落的做事。

答案 4 :(得分:0)

你可以使用Afflicted建议但我使用的以下解决方案有正确的概述:

<div class="list">

<a class="item item-icon-left" href="#">
  <i class="icon ion-email"></i>
  Check mail
</a>

...

List icons in ionic