2012-04-28 10 views
0

Sencha touchphone gapに関する2つの質問があります。Sencha touchでHello Worldプログラム(基本)を実行しています

私はAjith kumarのSenchaTouch CookBookを読んでいます。私は第1章で与えられたサンプルプログラムに従っています。だから私は以下のことをしました。

これは私のindex.html

<!DOCTYPE HTML> 
    <html> 
     <head> 
      <title>Yapps! - Your daily applications!</title> 
      <link rel="stylesheet" href="sencha- 
       touch/resources/css/sencha-touch.css" type="text/css"> 
       <link rel="stylesheet" href="sencha- 
        touch/resources/css/yapps-all.css" type="text/css"> 
       <script type="text/javascript" charset="utf-8" 
        src="phonegap.1.0.0.js"></script> 
       <script type="text/javascript" charset="utf-8" src="sencha- 
        touch/sencha-touch.js"></script> 
       <script type="text/javascript" charset="utf-8" 
        src="ch01/ch01_03.js"></script> 
       <script type="text/javascript" charset="utf-8" src="sencha- 
        touch/yapps-all.js"></script> 



     </head> 
     <body></body> 
    </html> 

ch01_03.jsファイルです。 WWWフォルダ内にこれらの.JSファイルを追加するように指示されましたが、そのフォルダ内にファイルを追加できないため、フォルダから追加しました。

Ext.setup({ 
      onReady: function() { 
      var supportedFeatures = "Ext.supports.AudioTag : " + 
      (Ext.supports.AudioTag ? "On" : "Off"); 
      supportedFeatures += "\nExt.supports.CSS3BorderRadius : " + 
      (Ext.supports.CSS3BorderRadius ? "On" : "Off"); 
      supportedFeatures += "\nExt.supports.CSS3DTransform : " + 
      (Ext.supports.CSS3DTransform ? "On" : "Off"); 
      supportedFeatures += "\nExt.supports.CSS3LinearGradient : " + 
      (Ext.supports.CSS3LinearGradient ? "On" : "Off"); 
      supportedFeatures += "\nExt.supports.Canvas : " + 
      (Ext.supports.Canvas ? "On" : "Off"); 
      supportedFeatures += "\nExt.supports.DeviceMotion : " + 
      (Ext.supports.DeviceMotion ? "On" : "Off"); 
      supportedFeatures += "\nExt.supports.Float : " + 
      (Ext.supports.Float ? "On" : "Off"); 
      supportedFeatures += "\nExt.supports.GeoLocation : " + 
      (Ext.supports.GeoLocation ? "On" : "Off"); 
      supportedFeatures += "\nExt.supports.History : " + 
      (Ext.supports.History ? "On" : "Off"); 
      supportedFeatures += "\nExt.supports.OrientationChange : " + 
      (Ext.supports.OrientationChange ? "On" : "Off"); 
      supportedFeatures += "\nExt.supports.RightMargin : " + 
      (Ext.supports.RightMargin ? "On" : "Off"); 
      supportedFeatures += "\nExt.supports.SVG : " + 
      (Ext.supports.SVG ? "On" : "Off"); 
      supportedFeatures += "\nExt.supports.Touch : " + 
      (Ext.supports.Touch ? "On" : "Off"); 
      supportedFeatures += "\nExt.supports.Transitions : " + 
      (Ext.supports.Transitions ? "On" : "Off"); 
      supportedFeatures += "\nExt.supports.TransparentColor : " + 
      (Ext.supports.TransparentColor ? "On" : "Off"); 
      supportedFeatures += "\nExt.supports.VML : " + 
      (Ext.supports.VML ? "On" : "Off"); 
      Ext.Msg.alert("INFO", supportedFeatures); 
      } 
      }); 

1.)問題は、私がiPhoneとStimulatorで実行したときに空白の画面しか表示されないことです。これは何が起こっているのですが、アラートをビューに表示させるにはどうすればよいですか?

2.)私はデバイスが私はアプリケーションを実行しているかどうかを検出する必要があります。この本では、iPad、Androidアプリケーション、Blackberryを検出する方法を示しています。しかし、iPhoneではありません。どうすればiPhoneを検出できますか?この質問はsencha-touch-2の下でタグ付けされているので

Ext.setup({ 
      onReady: function() { 

      if (Ext.is.Android) 
      Ext.Msg.alert("INFO", "Welcome Android user!"); 
      if (Ext.is.Blackberry) 
      Ext.Msg.alert("INFO", "Welcome Blackberry user!"); 
      if (Ext.is.iPad) 
      Ext.Msg.alert("INFO", "Welcome iPad user!"); 

      } }); 

答えて

1

は、私はあなたが検出するExt.env.OSパッケージを使用することができ、あなたは煎茶タッチ2.

Ext.isは2.0

代わり煎茶タッチバージョン用に推奨されていません使用していることを前提とオペレーティングシステムは、デバイス上で実行されています。 Androidプラットフォーム

  • Ext.os.is.iPhone:iPhone
  • Ext.os.is.iPad:iPadの

    また、あなたは

    • Ext.os.is.Android ...のiPad、iPhone、アンドロイドなどのようなp'cularデバイスを検出するためのプロパティですを使用することができますなど。

    EDIT:

    はい、p'cularデバイスを検出できます。それは `iPhone`を示唆していないXcodeでまだあなたのreply.Butいただき、ありがとうございます)Sencha Touch MVC with PhoneGap

  • +0

    1.上

    var navigation = Ext.global.navigator, userAgent = navigation.userAgent, osEnv, osName, deviceType; Ext.os = osEnv = new this(userAgent, navigation.platform); osName = osEnv.name; var search = window.location.search.match(/deviceType=(Tablet|Phone)/), nativeDeviceType = window.deviceType; if (search && search[1]) { deviceType = search[1]; } else if (nativeDeviceType === 'iPhone') { deviceType = 'Phone'; } else if (nativeDeviceType === 'iPad') { deviceType = 'Tablet'; } 

    良い例...以下のコードをチェックします(それはアンドロイド、iPadやブラックベリーを提案しますiPhoneはありません)。 2.)私はindex.htmlで正しいファイルパスにないファイルを参照していると思います。 'WWW'フォルダに' ch01/ch01_03.js'を追加していないので、 'WWW'フォルダにファイルを追加することが許可されていないので、' WWW'フォルダの外に追加しました。どうすれば 'cho1_03.js'ファイルにアクセスできますか? – user1315906

    +0

    そのファイルを 'www'フォルダに入れる必要があります。そうでなければ、アクセスできなくなります。なぜ 'www'フォルダに追加できないのですか? –

    +0

    また、iPhone、iPadなどのデバイスを検出するための編集コードを確認してください。 –

    関連する問題