Framework7-status-bar

提供:Dev Guides
移動先:案内検索

Framework7-ステータスバー

説明

iOS 7以降では、ステータスバーがアプリと重なると問題が発生する可能性があるフルスクリーンアプリを作成できます。 Framework7は、アプリが全画面モードになっているかどうかを検出することにより、この問題を解決します。 アプリがフルスクリーンモードの場合、Framework7は_with-statusbar-overlay_クラスを_ <html> _に自動的に追加します(またはアプリがフルスクリーンモードでない場合は削除します)。_statusbar-overlay_クラスを_に追加する必要があります。 <body> _次のコードに示すように-

<html class = "with-statusbar-overlay">
...
   <body>
      <div class = "statusbar-overlay"></div>
      ...

デフォルトでは、_ <div> は常に非表示になり、画面の上部に固定されます。 アプリが全画面モードであり、_with-statusbar-overlay_クラスが <html> _に追加された場合にのみ表示されます。

次の例は、Framework7でのステータスバーの使用を示しています-

<!DOCTYPE html>
<html>

   <head>
      <meta name = "viewport" content = "width = device-width, initial-scale = 1,
         maximum-scale = 1, minimum-scale = 1, user-scalable = no, minimal-ui"/>
      <meta name = "apple-mobile-web-app-capable" content = "yes"/>
      <meta name = "apple-mobile-web-app-status-bar-style" content = "black"/>
      <title>My App</title>
      <link rel = "stylesheet"
         href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.min.css"/>
      <link rel = "stylesheet"
         href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.colors.min.css"/>
   </head>

   <body>
      <div class = "statusbar-overlay"></div>
      <div class = "panel-overlay"></div>

      <div class = "panel panel-right panel-reveal">
         <div class = "content-block">
            <p>Contents goes here...</p>
         </div>
      </div>

      <div class = "views">
         <div class = "view view-main">
            <div class = "navbar">
               <div class = "navbar-inner">
                  <div class = "center sliding">My App</div>

                  <div class = "right">
                     <a href = "#" class = "link icon-only open-panel"><i class = "icon icon-bars"></i></a>
                  </div>

               </div>
            </div>

            <div class = "pages navbar-through toolbar-through">
               <div data-page = "index" class = "page">
                  <div class = "page-content">
                     <p>This is simple application...</p>
                     <p>page contents goes here!!!</p>
                  </div>
               </div>
            </div>

            <div class = "toolbar">
               <div class = "toolbar-inner">
                  <a href = "#" class = "link">First Link</a>
                  <a href = "#" class = "link">Second Link</a>
               </div>
            </div>

         </div>
      </div>

      <script type = "text/javascript"
         src = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/js/framework7.min.js"></script>

      <script>
        //here initialize the app
         var myApp = new Framework7();

        //If your using custom DOM library, then save it to $$ variable
         var $$ = Dom7;

        //Add the view
         var mainView = myApp.addView('.view-main', {
           //enable the dynamic navbar for this view:
            dynamicNavbar: true
         });

        //use the 'pageInit' event handler for all pages
         $$(document).on('pageInit', function (e) {
           //get page data from event data
            var page = e.detail.page;
         })
      </script>
   </body>

</html>

出力

上記のコードがどのように機能するかを確認するために次の手順を実行してみましょう-

  • 上記のHTMLコードを status_barl ファイルとしてサーバーのルートフォルダーに保存します。
  • このHTMLファイルをhttp://localhost/status_barlとして開くと、出力は以下のように表示されます。

この例は、 statusbar-overlay の使用方法を示しています。これにより、ステータスバーがアプリと重なったときにフルスクリーンアプリを構築できます。