Android Open Source - SensorTagAndroidProject Gyroscope Fragment






From Project

Back to project page SensorTagAndroidProject.

License

The source code is released under:

Apache License

If you think the Android project SensorTagAndroidProject 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

package org.amei.sensortagandroid.sections;
//from   ww  w  .j  a  v a2 s .c  o  m
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView;

import org.amei.sensortagandroid.R;
import org.amei.sensortagandroid.SensorTagService;

/**
 * Created by valueBLE on 08/08/13.
 */
public class GyroscopeFragment extends SectionFragment {
    private TextView mXValueTextView;
    private TextView mYValueTextView;
    private TextView mZValueTextView;
    private LinearLayout mGyroscopeDetails;
    private Receiver mReceiver;

    public class Receiver extends BroadcastReceiver {
        public Receiver() {
            // Android needs the empty constructor.
        }

        @Override
        public void onReceive(Context context, Intent intent) {
            final String action = intent.getAction();
            if (SensorTagService.ACTION_GATT_CONNECTED.equals(action)) {
                setConnected(true);
            } else if (SensorTagService.ACTION_GATT_DISCONNECTED.equals(action)) {
                setConnected(false);
            } else if (SensorTagService.ACTION_GYROSCOPE_DATA_AVAILABLE.equals(action)) {
                setConnected(true);
                float x = intent.getFloatExtra(SensorTagService.DATA_GYROSCOPE_X, 0);
                float y = intent.getFloatExtra(SensorTagService.DATA_GYROSCOPE_Y, 0);
                float z = intent.getFloatExtra(SensorTagService.DATA_GYROSCOPE_Z, 0);
                mXValueTextView.setText(Float.toString(x));
                mYValueTextView.setText(Float.toString(y));
                mZValueTextView.setText(Float.toString(z));
            }
        }
    }

    @Override
    protected int getLayoutResource() {
        return R.layout.fragment_sensor_tag_gyroscope;
    }

    @Override
    protected void onCreateViewHook(View rootView) {
        mXValueTextView = (TextView) rootView.findViewById(R.id.gyroscope_details_x_value);
        mYValueTextView = (TextView) rootView.findViewById(R.id.gyroscope_details_y_value);
        mZValueTextView = (TextView) rootView.findViewById(R.id.gyroscope_details_z_value);
        mGyroscopeDetails = (LinearLayout) rootView.findViewById(R.id.gyroscope_details);
    }

    @Override
    protected LinearLayout getSectionLayout() {
        return mGyroscopeDetails;
    }

    @Override
    protected void registerSectionReceiver(IntentFilter filter) {
        filter.addAction(SensorTagService.ACTION_GYROSCOPE_DATA_AVAILABLE);
        mReceiver = new Receiver();
        getActivity().registerReceiver(mReceiver, filter);
    }

    @Override
    protected void unregisterSectionReceiver() {
        getActivity().unregisterReceiver(mReceiver);
    }
}




Java Source Code List

org.amei.sensortagandroid.ConfigurationDialogFragment.java
org.amei.sensortagandroid.SensorTagActivity.java
org.amei.sensortagandroid.SensorTagService.java
org.amei.sensortagandroid.sections.AccelerometerFragment.java
org.amei.sensortagandroid.sections.GyroscopeFragment.java
org.amei.sensortagandroid.sections.HumidityFragment.java
org.amei.sensortagandroid.sections.MagnetometerFragment.java
org.amei.sensortagandroid.sections.SectionFragment.java
org.amei.sensortagandroid.sections.TemperatureFragment.java