0

ウィンドウにスライダーが含まれるiOS アプリケーションを作成しています。すでに設定されている特定の値を表示するためにスライダーを使用しています。つまり、ユーザーは値を手動で変更しないでください。次のようにスライダーを作成しました

var slider = Ti.UI.createSlider({
    min : 0,
    max : 60,
    width : '60%',
    height: 40,
    value : 25,
    enabled : false,
    disabledLeftTrackImage : 'slider.png'
});

ここでは、私が設定したため、ユーザーはスライダーの値を変更できませんenabled : false。しかし、そうすると、画像がぼやけます(画像のスライダー2)。最初のようにしたいので、ユーザーはスライダーの値を手動で変更しないでください。することは可能ですか?ユーザーがスライダーの値を変更できないようにする他の方法はありますか? 誰でも私を助けることができますか?

スライダー画像

4

4 に答える 4

1

確かにこれは間違った UI です。なぜユーザーが操作できないスライダーを使用しているのですか? 使用する正しいものは Ti.UI.ProgressBar です。それ以外の場合は、enabled:false グレー表示の動作が正しいため、ユーザーはそれをいじろうとしません..

それが使用されているコンテキストがなければわかりませんが、UI の慣習は上記を示唆しています..

于 2013-01-10T17:02:41.670 に答える
1

に設定enabledしているためfalse、スライダーはフェードアウトして、操作できないことをユーザーに示します。MaxGabriel が言ったように、スライダーをフェードせずに、Objective-C に設定userInteractionEnabledすることと同等です。このリンクNOによると、Titanium での同等の方法は、ユーザーのタッチがスライダーに渡されないように、スライダーの上に透明なレイヤーを追加することです。これがリンクからのコードです。

var overlay_view = Ti.Ui.createView({
    height:'100%',
    width:'100%',
    top:0,
    left:0
})
win.add(overlay_view);
于 2013-01-10T07:34:52.200 に答える
0

ジャック氏の答えは私にとってうまくいきました。しかし、私はここからもっと簡単な方法を得ました。のようなtouchEnabledプロパティをリセットするtouchEnabled : false。他の人にも役立つので、ここに答えとして追加します!!

var slider = Ti.UI.createSlider({
        min : 0,
        max : 60,
        width : '60%',
        height: 40,
        value : 25,
        touchEnabeld : false,
        leftTrackImage : 'slider.png'
});
于 2013-01-10T10:09:49.787 に答える
0

Objective-C では、userInteractionEnabledプロパティを に設定しますNOuserInteractionEnabled: falseそれはチタンに変換されると思いますか?

于 2013-01-10T07:26:21.823 に答える