viewFlipper сохранить положение - PullRequest
0 голосов
/ 15 января 2012

Я пытаюсь найти способ сделать видоискатель открытым для последней дочерней позиции, в которой он находился при закрытии приложения. Любая помощь будет оценена. Я все еще новичок в этом.

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState); 
        setContentView(R.layout.main);

    Toast.makeText(this, "Swipe Left or Right", Toast.LENGTH_LONG).show();       

    gestureDetector = new GestureDetector(new MyGestureDetector());
    View mainview = (View) findViewById(R.id.viewFlipper1);

     // Set the touch listener for the main view to be our custom gesture listener
    mainview.setOnTouchListener(new View.OnTouchListener() {
        public boolean onTouch(View v, MotionEvent event) {
            if (gestureDetector.onTouchEvent(event)) {
                return true;
            }
            return false;
        }
    });
}

class MyGestureDetector extends SimpleOnGestureListener {
    @Override
    public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float          `enter code here`velocityY) {        
    final ViewFlipper viewFlipper = (ViewFlipper)findViewById(R.id.viewFlipper1);

        if (Math.abs(e1.getY() - e2.getY()) > SWIPE_MAX_OFF_PATH) {
            return false;
        }

1 Ответ

0 голосов
/ 16 января 2012

Я думаю, что вы можете использовать SharedPreferences в Android, чтобы сохранить позицию флиппера, которая просматривалась в последний раз перед закрытием приложения.Таким образом, всякий раз, когда приложение перемещается в это действие, вы можете извлечь позицию флиппера из SharedPreference и вызвать свойство flipper: viewFlipper.setDisplayedChild(position retrived from SharedPreference); Это поможет вам переместить флиппер в положение, которое просматривалось в последний раз перед закрытием приложения.Я надеюсь, что это поможет вам решить проблему.

...