0

HTML をレンダリングするために xTemplates を使用して、PhoneGap/Sencha touch 2.0 アプリケーションを実行しています。パフォーマンスに問題があり、どういうわけか、タグの入力はタグ<input type='password'>の入力よりもはるかに速くなります<input type='text'>(つまり、文字が仮想キーボードでタップされた瞬間と入力ボックスに実際に表示される瞬間の間の遅延は、)でもっと短くtype=password

これがなぜなのかわかりません。根本的な原因からパフォーマンスの問題を解決する時間がないように感じます (プロジェクトは間もなく終了します)。

私が見る最も簡単な回避策は、テキスト セキュリティを無効にし、入力/テキスト ボックスをパスワード タイプにすることです。

私はこれがトリックを行うはずだと思った:

-webkit-text-security: none;

しかし、私はそれを機能させることができません。

ここで何か不足していますか?(私はそれを追加しようとしましinline!importantが、運がありません)

4

1 に答える 1

0

私が見る限り、パスワード フィールドは拡張された Ext.field.Text です。これはおそらく、他のパフォーマンスの悪いフィールドで使用しているものです。

これは sencha-touch-all-debug.js からのものです:

Ext.define('Ext.field.Password', {
    extend: 'Ext.field.Text',
    xtype: 'passwordfield',
    alternateClassName: 'Ext.form.Password',

    config: {
        /**
         * @cfg
         * @inheritdoc
         */
        autoCapitalize: false,

        /**
         * @cfg
         * @inheritdoc
         */
        component: {
            type: 'password'
        }
    }
});

あなたが見ている速度の利点は、文字のルックアップを単一の文字に減らすことによるものだと思いますか? それは完全な推測ですが。

Sencha Touch では、WebView コントロールと、それが特定のプラットフォームでどれだけうまく機能するかに大きく依存しています。これが Android 3.0 プラットフォーム上にある場合は、顧客にそれをやめるか、そのプラットフォームをサポートしないように伝えてください。Sencha Touch のサンプル コードでさえ、1 つまたは 2 つのプラットフォームでスクロールが不安定になり、パフォーマンスの問題が発生します。私にとっては、Android 3.0 が最悪でした。4.0 で問題が修正されたと聞きました。

3.0 および 3.1 で実行されている webview のパフォーマンスの低下 http://code.google.com/p/android/issues/detail?id=17458

于 2012-08-10T19:56:40.383 に答える