Material angular: barras de herramientas

los md-toolbar, se usa una directiva Angular para mostrar una barra de herramientas que normalmente es un área sobre el contenido para mostrar el título y los botones relevantes.

Atributos

La siguiente tabla enumera los parámetros y la descripción de los diferentes atributos del md-toolbar.

No Señor Descripción de parámetros
1

md-scroll-shrink

Esto determina si el encabezado debe encogerse a medida que el usuario se desplaza hacia abajo y revelarse cuando el usuario se desplaza hacia arriba.

  • para scrollShrink para que funcione, la barra de herramientas debe ser hermana de un elemento de contenido md, colocado antes.

  • los md-scroll-shrink El atributo solo se analiza en la inicialización del componente, no observa los cambios de alcance.

2

md-shrink-speed-factor

Cuánto cambiar la velocidad de reducción de la barra de herramientas. Por ejemplo, si se da 0,25, la barra de herramientas se reducirá a un cuarto de la velocidad a la que el usuario se desplaza hacia abajo. Por defecto, es 0.5.

Ejemplo

El siguiente ejemplo muestra el uso de la barra de herramientas.

am_toolbar.htm

<html lang = "en">
   <head>
      <link rel = "stylesheet"
         href = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
      <script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
      <script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
      <script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
      <script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
      <script src = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
      <link rel = "stylesheet" href = "https://fonts.googleapis.com/icon?family=Material+Icons">
      
      <script language = "javascript">
         angular
            .module('firstApplication', ['ngMaterial'])
            .controller('toolbarController', toolbarController);
           
         function toolbarController ($scope) { 
            var self = this;            
            self.allContacts = loadContacts();
            self.contacts = [self.allContacts[0]];
                        
            function loadContacts() {
               var contacts = [
                  'Roberto Karlos',
                  'Bob Crestor',
                  'Nigel Rick',
                  'Narayana Garner'                  
               ];
               
               return contacts.map(function (c, index) {
                  var cParts = c.split(' ');
                  
                  var contact = {
                     name: c,
                     email: cParts[0][0].toLowerCase() + '.' + cParts[1].toLowerCase()
                        + '@example.com',
                     image: 'http://lorempixel.com/50/50/people?' + index
                  };
                  
                  contact._lowername = contact.name.toLowerCase();
                  return contact;
               });
            } 
         }	  
      </script>      
   </head>
   
   <body ng-app = "firstApplication"> 
      <div id = "toolbarContainer" ng-controller = "toolbarController as ctrl"
         layout = "column" ng-cloak>
         <md-content>
            <md-toolbar md-scroll-shrink>
               <div class = "md-toolbar-tools">
                  <md-button class = "md-icon-button" aria-label = "Settings">
                     <md-icon class = "material-icons">menu</md-icon>
                  </md-button>
                  
                  <h2>
                     <span>Contacts</span>
                  </h2>
                  
                  <span flex></span>
                  <md-button class = "md-icon-button" aria-label = "More">
                     <md-icon class = "material-icons">more_vert</md-icon>
                  </md-button>
               </div>
            </md-toolbar>
            
            <md-list>
               <md-subheader class = "md-no-sticky">Contacts</md-subheader>
               <md-list-item class = "md-2-line contact-item"
                  ng-repeat = "(index, contact) in ctrl.allContacts"
                  ng-if = "ctrl.contacts.indexOf(contact) < 0">
                  <img ng-src = "{{contact.image}}" class = "md-avatar"
                     alt = "{{contact.name}}" />
                  
                  <div class = "md-list-item-text compact">
                     <h3>{{contact.name}}</h3>
                     <p>{{contact.email}}</p>
                  </div>
                  
                  <md-divider ng-if = "!$last"></md-divider>
               </md-list-item>
            </md-list>
            
            <md-list>
               <md-subheader class = "md-no-sticky">Contacts (With Insets)</md-subheader>
               <md-list-item class = "md-2-line contact-item"
                  ng-repeat = "(index, contact) in ctrl.allContacts"
                  ng-if = "ctrl.contacts.indexOf(contact) < 0">
                  <img ng-src = "{{contact.image}}" class = "md-avatar"
                     alt = "{{contact.name}}" />
                  <div class = "md-list-item-text compact">
                     <h3>{{contact.name}}</h3>
                     <p>{{contact.email}}</p>
                  </div>
                  <md-divider md-inset ng-if = "!$last"></md-divider>
               </md-list-item>
            </md-list>
            
         </md-content>	 
      </div>
   </body>
</html>

Resultado

Verifica el resultado.