Android Open Source - gdk-apidemo-sample-master Continuous Gestures Activity






From Project

Back to project page gdk-apidemo-sample-master.

License

The source code is released under:

Apache License

If you think the Android project gdk-apidemo-sample-master listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/*
 * Copyright (C) 2013 The Android Open Source Project
 *//from  ww  w.j  av  a2  s .  co m
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.google.android.glass.sample.apidemo.touchpad;

import com.google.android.glass.sample.apidemo.R;
import com.google.android.glass.touchpad.GestureDetector;

import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.widget.TextView;

/**
 * Displays information about the continuous gestures reported by the gesture detector (i.e.,
 * scrolling events).
 */
public class ContinuousGesturesActivity extends Activity
        implements GestureDetector.OneFingerScrollListener, GestureDetector.TwoFingerScrollListener{

    private TextView mScrollType;
    private TextView mDisplacement;
    private TextView mDelta;
    private TextView mVelocity;
    private GestureDetector mGestureDetector;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_continuous_gestures);

        mScrollType = (TextView) findViewById(R.id.scroll_type);
        mDisplacement = (TextView) findViewById(R.id.displacement);
        mDelta = (TextView) findViewById(R.id.delta);
        mVelocity = (TextView) findViewById(R.id.velocity);

        // Initialize the gesture detector and set the activity to listen to the continuous
        // gestures.
        mGestureDetector = new GestureDetector(this)
                .setOneFingerScrollListener(this).setTwoFingerScrollListener(this);
    }

    /**
     * Overridden to allow the gesture detector to process motion events that occur anywhere within
     * the activity.
     */
    @Override
    public boolean onGenericMotionEvent(MotionEvent event) {
        return mGestureDetector.onMotionEvent(event);
    }

    @Override
    public boolean onOneFingerScroll(float displacement, float delta, float velocity) {
        mScrollType.setText(R.string.scroll_one_finger);
        updateScrollInfo(displacement, delta, velocity);
        return true;
    }

    @Override
    public boolean onTwoFingerScroll(float displacement, float delta, float velocity) {
        mScrollType.setText(R.string.scroll_two_finger);
        updateScrollInfo(displacement, delta, velocity);
        return true;
    }

    /**
     * Updates the text views that show the detailed scroll information.
     *
     * @param displacement the scroll displacement (position relative to the original touch-down
     *     event)
     * @param delta the scroll delta from the previous touch event
     * @param velocity the velocity of the scroll event
     */
    private void updateScrollInfo(float displacement, float delta, float velocity) {
        mDisplacement.setText(getResources().getString(
                R.string.pixel_distance_units, displacement));
        mDelta.setText(getResources().getString(R.string.pixel_distance_units, delta));
        mVelocity.setText(getResources().getString(R.string.pixel_velocity_units, velocity));
    }
}




Java Source Code List

com.google.android.glass.sample.apidemo.ApiDemoActivity.java
com.google.android.glass.sample.apidemo.BuildConfig.java
com.google.android.glass.sample.apidemo.card.CardAdapter.java
com.google.android.glass.sample.apidemo.card.CardBuilderActivity.java
com.google.android.glass.sample.apidemo.card.CardScrollViewActivity.java
com.google.android.glass.sample.apidemo.card.EmbeddedCardLayoutActivity.java
com.google.android.glass.sample.apidemo.card.EmbeddedCardLayoutAdapter.java
com.google.android.glass.sample.apidemo.card.SimpleTableItem.java
com.google.android.glass.sample.apidemo.opengl.CubeRenderer.java
com.google.android.glass.sample.apidemo.opengl.Cube.java
com.google.android.glass.sample.apidemo.opengl.MenuActivity.java
com.google.android.glass.sample.apidemo.opengl.OpenGlService.java
com.google.android.glass.sample.apidemo.slider.SliderActivity.java
com.google.android.glass.sample.apidemo.theming.TextAppearanceActivity.java
com.google.android.glass.sample.apidemo.theming.TextAppearanceAdapter.java
com.google.android.glass.sample.apidemo.touchpad.ContinuousGesturesActivity.java
com.google.android.glass.sample.apidemo.touchpad.DiscreteGesturesActivity.java
com.google.android.glass.sample.apidemo.touchpad.SelectGestureDemoActivity.java
com.google.android.glass.sample.apidemo.touchpad.TouchpadView.java
com.google.android.glass.sample.apidemo.voicemenu.VoiceMenuActivity.java