7

私はAndroidのphonegapアプリにzxingバーコードスキャナープラグインを正常に追加しました。ここにjsコードがあり、ページショーでバーコードスキャナー画面を見ることができます。

  $('#scanpage').live('pageshow', function (event, ui) {
    //navigator.notification.alert("Search page");

    window.plugins.barcodeScanner.scan( function(result) {
        //navigator.notification.alert("We got a barcode\n" +   "Result: " + result.text + "\n" +"Format: " + result.format + "\n" +
            //    "Cancelled: " + result.cancelled);
         }, function(error) {
        navigator.notification.alert("Scanning failed: " + error);
    }); 

});

これがhtml5ページコードです

div id="scanpage" data-role="page">
<div data-role="header" class="pageheader">

<div class="height30" style="padding-right:2%;">
 <div class="back" style="margin-right:2%;"><a href="#homepage">Back</a></div>
<div class="logo2" ><a href="#"  ><img src="images/scan.png" style="padding-top:12px;" alt="Scan Code" /></a>
</div>
 </div>
 </div> 

<div data-role="content"  class="wrapper" style="width:100%">


 <div style="background-color:#000000;" >
 <div style="height:400px;" id="scanarea"></div>


 <input name="" type="button" class="button" value="Focus and Scan" data-role="none"   />

  </div><!-- inner div-->


</div>  
   </div> <!-- end SCAN PAGE -->

しかし、どのように機能するか、最初にページを開いたときにhtmlをロードしますが、2番目に画面全体がバーコードスキャナーウィンドウで覆われている場合、このスキャン領域をDIV'scanarea'に修正します。しかし、特定のdiv領域でそれを修正する方法がわからない場合、ボタンをクリックするとスキャンが実行され、バーコードが読み取られます。

スキャンウィンドウ ここに画像の説明を入力してください

htmlページ ここに画像の説明を入力してください

このように表示する必要があります ここに画像の説明を入力してください

4

1 に答える 1

2

バーコードスキャン画面は、PhoneGapのWebビューを完全に非表示にするAndroidアクティビティとして実装されています。この画面をカスタマイズしたい場合は、なんらかの方法でレイアウトファイルを変更することをお勧めします。

[フォーカスとスキャン]ボタンで手動スキャンがトリガーされると思います(デフォルトでは最初のバーコードが認識されます)。したがって、アクティビティの実装を変更して、そのボタンのハンドラーを含める必要がある場合があります。

Simon Mac Donaldのブログ(彼はAndroidでバーコードスキャンプラグインを開発しているようです)とこの回答(これはまさに私が上で書いたものです、snap:P)も参照してください。

于 2012-08-26T21:40:01.593 に答える