selectfield
デスクトップで完全に動作する (スクロール、選択、適切なイベントの発生、適切なフィールドの更新など) がありますが、モバイル (iPhone) で実行すると選択後に消えません。
選択を行っても、選択フィールドの「ホイール」は消えず、マスク (スクロール ピッカー領域の外側) をタップしても消えません。繰り返しますが、これはモバイルでのみ発生し、デスクトップでは問題ありません。
フレームワークのバグのように聞こえますか? もっと手がかりを読んでください...
{
xtype: 'selectfield',
id: 'editor-page',
name: 'page',
label: 'Page',
labelWidth: 70,
options: [
{text: 'N/A', value: 'N/A'},
{text: '1', value: '1'},
{text: '2', value: '2'},
{text: '3', value: '3'}
// ...
]
}
私が試したこと(運なし)
Web 上の同様の問題について私が見たものから、設定をいじってみました
showAnimation: 'false'
。強制
hideOnMaskTap: 'true'
(デフォルトであるはずですが)設定
modal: 'true'
設定
stopMaskTapEvent: 'false'
(ピッカーの外側でタップできるようにするため)(そして...フレームワークの癖や私の側の相互依存性の誤解の場合に備えて、上記のすべての組み合わせ。)
モバイル (iPhone) ではなくデスクトップで発生する Selectfield イベント?
ではselectfield
、選択の変更をトラップしてhide
orを強制する手段として、次のイベントにリスナーを配置しましたblur
が、結局のところ、それらはデスクトップ (Chrome) でのみ起動し、モバイル Safari では起動しません。
listeners: {
'render': function (thisComponent) {
alert("select!");
thisComponent.blur();
},
'action': function (thisComponent) {
alert("action!");
thisComponent.blur();
},
'select': function (thisComponent) {
alert("select!");
thisComponent.blur();
}
}
最後に、認めたくありませんが、はい、Sencha Touch 1.1.0 を使用しています。
*あえぎ!ああ、ホラー! *
この時点で、プロジェクトは 2.x への移行のすべての影響を検討するのに十分な時間がない可能性があります。したがって、これを絶対に修正する必要がある場合は、移行に飛び込む前の最後の努力です。