1

コードで SeekBar を使用すると問題が発生します...

ユーザーではなく、私が値を設定する SeekBar が必要です。私が見つけた唯一の解決策は、有効を false に設定することですが、シークバーの色が灰色になります... (ユーザーが親指をスライドさせても何もできません...)

私はそのようなものを手に入れますが、タッチ可能なイベントはありません!

ここに画像の説明を入力

解決済み:

@CommonsWareが言うように、私は問題を解決しました:

public class TaskListProgressBar extends SeekBar {

public TaskListProgressBar(Context context) {
    super(context);
 }


public TaskListProgressBar(Context context, AttributeSet attrs) {
        super(context, attrs);
   }

   public TaskListProgressBar(Context context, AttributeSet attrs, int defStyle) {
       super(context, attrs, defStyle);
   }


   @Override
   public boolean onTouchEvent(MotionEvent event) {
       return true;
   }

   @Override
   public boolean onTrackballEvent(MotionEvent ev) {
       return false;
   } 
4

1 に答える 1

3

それをサブクラス化してオーバーライドonTouchEvent()し、onTrackballEvent()(親指をスライドさせようとするすべての試みを食べるために)また使用することもできますandroid:focusable="false"(フォーカスを取得できないようにするため、矢印キーは親指の位置を変更できません)。

そうは言っても:

  • 私はこれを試したことがないので、YMMV.

  • 上記のスクリーンショットに従って、デフォルトのサムネイル画像を変更する場合にのみ、これを行ってください。そうしないと、ユーザーは親指が動かせることを期待し、動かせないとイライラします。

于 2012-04-17T12:18:09.407 に答える