• ionic 上拉菜单(ActionSheet)安装和iOS样式不一样


      ISO中的界面是这样的:

        

    然而,Android中的界面是这样的:

        

    代码如下:

      HTML部分:

        

    1 <body ng-app="starter" ng-controller="actionsheetCtl" >
    2      <ion-pane>
    3          <ion-content >
    4              <h2 ng-click="show()">Action Sheet</h2>
    5          </ion-content>
    6      </ion-pane>
    7  </body>

      js部分:

      

     1 angular.module('starter', ['ionic'])
     2 
     3 .run(function($ionicPlatform) {
     4   $ionicPlatform.ready(function() {
     5     // Hide the accessory bar by default (remove this to show the accessory bar above the keyboard
     6     // for form inputs)
     7     if(window.cordova && window.cordova.plugins.Keyboard) {
     8       cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
     9     }
    10     if(window.StatusBar) {
    11       StatusBar.styleDefault();
    12     }
    13   });
    14 })
    15 
    16 .controller( 'actionsheetCtl',['$scope','$ionicActionSheet','$timeout' ,function($scope,$ionicActionSheet,$timeout){
    17     $scope.show = function() {
    18         var hideSheet = $ionicActionSheet.show({
    19             buttons: [
    20               { text: '<b>Share</b> This' },
    21               { text: 'Move' }
    22             ],
    23             destructiveText: 'Delete',
    24             titleText: 'Modify your album',
    25             cancelText: 'Cancel',
    26             cancel: function() {
    27                  // add cancel code..
    28                },
    29             buttonClicked: function(index) {
    30               return true;
    31             }
    32         });
    33     };  
    34 }])

      主要修改 ionic.css 的代码就行了,对比iOS和Android的ionic.css样式后发现,Android多了这段样式代码:

      

     1 .platform-android .action-sheet-backdrop.active {
     2   background-color: rgba(0, 0, 0, 0.2); }
     3 
     4 .platform-android .action-sheet {
     5   margin: 0; }
     6   .platform-android .action-sheet .action-sheet-title,
     7   .platform-android .action-sheet .button {
     8     text-align: left;
     9     border-color: transparent;
    10     font-size: 16px;
    11     color: inherit; }
    12   .platform-android .action-sheet .action-sheet-title {
    13     font-size: 14px;
    14     padding: 16px;
    15     color: #666; }
    16   .platform-android .action-sheet .button.active,
    17   .platform-android .action-sheet .button.activated {
    18     background: #e8e8e8; }
    19 
    20 .platform-android .action-sheet-group {
    21   margin: 0;
    22   border-radius: 0;
    23   background-color: #fafafa; }
    24 
    25 .platform-android .action-sheet-cancel {
    26   display: none; }
    27 
    28 .platform-android .action-sheet-has-icons .button {
    29   padding-left: 56px; }

      

      正是这段样式代码导致了两个平台显示的界面不一样,知道原因后,接下来就很简单了,把这段代码注释掉就行了

        

     1 /*.platform-android .action-sheet-backdrop.active {*/
     2   /*background-color: rgba(0, 0, 0, 0.2); }*/
     3 
     4 /*.platform-android .action-sheet {*/
     5   /*margin: 0; }*/
     6   /*.platform-android .action-sheet .action-sheet-title,*/
     7   /*.platform-android .action-sheet .button {*/
     8     /*text-align: left;*/
     9     /*border-color: transparent;*/
    10     /*font-size: 16px;*/
    11     /*color: inherit; }*/
    12   /*.platform-android .action-sheet .action-sheet-title {*/
    13     /*font-size: 14px;*/
    14     /*padding: 16px;*/
    15     /*color: #666; }*/
    16   /*.platform-android .action-sheet .button.active,*/
    17   /*.platform-android .action-sheet .button.activated {*/
    18     /*background: #e8e8e8; }*/
    19 
    20 /*.platform-android .action-sheet-group {*/
    21   /*margin: 0;*/
    22   /*border-radius: 0;*/
    23   /*background-color: #fafafa; }*/
    24 
    25 /*.platform-android .action-sheet-cancel {*/
    26   /*display: none; }*/
    27 
    28 /*.platform-android .action-sheet-has-icons .button {*/
    29   /*padding-left: 56px; }*/

       打包之后就可以发现,跟iOS显示的界面是一样的了。

    感谢这篇文章:http://www.cnblogs.com/provencefeng/p/6186851.html

  • 相关阅读:
    洛谷 P1146 【硬币翻转】题解
    洛谷 P1025 数的划分
    洛谷 P1017 进制转换
    堆栈练习3—行编辑程序
    实现适配于移动页面中间的swiper图片切换
    原生js实现多组图片抖动效果的问题
    多组抖动效果的图片js封装
    原生js实现图片抖动效果
    正负值地处理以及添加回调函数小案例
    原生js的正负值处理以及添加回调函数
  • 原文地址:https://www.cnblogs.com/nelsonlei/p/7729729.html
Copyright © 2020-2023  润新知