詳解 android 光線傳感器 light sensor的使用
更新時間:2017年06月28日 11:38:16 作者:yangshuolll
這篇文章主要介紹了詳解 android 光線傳感器 light sensor的使用的相關資料,需要的朋友可以參考下
調用anroid的光線傳感器使用。
實現(xiàn)效果圖:

MainActivity.Java
package hk.ust.cse.comp107x.ligthsensor;
import android.content.Context;
import android.hardware.Sensor;
import android.hardware.SensorEvent;
import android.hardware.SensorEventListener;
import android.hardware.SensorManager;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity implements SensorEventListener{
private SensorManager mSensorManager;
private Sensor mPressure;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Get an instance of the sensor service, and use that to get an instance of
// a particular sensor.
mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
mPressure = mSensorManager.getDefaultSensor(Sensor.TYPE_LIGHT);
}
@Override
public final void onAccuracyChanged(Sensor sensor, int accuracy) {
// Do something here if sensor accuracy changes.
}
@Override
public final void onSensorChanged(SensorEvent event) {
float light = event.values[0];
TextView v = (TextView)findViewById(R.id.textView);
v.setText(Float.toString(light));
// Do something with this sensor data.
}
@Override
protected void onResume() {
// Register a listener for the sensor.
super.onResume();
mSensorManager.registerListener(this, mPressure, SensorManager.SENSOR_DELAY_NORMAL);
}
@Override
protected void onPause() {
// Be sure to unregister the sensor when the activity pauses.
super.onPause();
mSensorManager.unregisterListener(this);
}
}
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="hk.ust.cse.comp107x.ligthsensor.MainActivity">
<TextView
android:id="@+id/textView"
android:textSize="50dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="177dp" />
</RelativeLayout>
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="hk.ust.cse.comp107x.ligthsensor">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關文章
Android 跨進程SharedPreferences異常詳解
這篇文章主要介紹了Android 跨進程SharedPreferences異常詳解的相關資料,需要的朋友可以參考下2017-05-05
Android仿新浪微博自定義ListView下拉刷新(4)
這篇文章主要為大家詳細介紹了Android仿新浪微博自定義ListView下拉刷新,重點介紹了Adapter的詳細代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-11-11
Android編程實現(xiàn)Toast只顯示最后一條的方法
這篇文章主要介紹了Android編程實現(xiàn)Toast只顯示最后一條的方法,結合實例形式總結了Toast只顯示最后一條的原理與具體實現(xiàn)技巧,需要的朋友可以參考下2017-08-08
詳解Android開發(fā)中ContentObserver類的使用
這篇文章主要介紹了詳解Android開發(fā)中ContentObserver類的使用,ContentObserver內(nèi)容觀察者主要用來監(jiān)聽uri的改變請情況,需要的朋友可以參考下2016-04-04
Android自定義view實現(xiàn)帶header和footer的Layout
這篇文章主要介紹了Android自定義view實現(xiàn)帶header和footer的Layout,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習吧2023-02-02
android系統(tǒng)拍照結合android-crop裁剪圖片
這篇文章主要為大家詳細介紹android系統(tǒng)拍照結合android-crop裁剪圖片,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-01-01
Android?性能優(yōu)化實現(xiàn)全量編譯提速的黑科技
這篇文章主要為大家介紹了Android?性能優(yōu)化實現(xiàn)全量編譯提速的黑科技,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-09-09

