編輯:關於Android編程
package com.beyond.phonestolen;
import android.hardware.Sensor;
import android.hardware.SensorEvent;
import android.hardware.SensorEventListener;
import android.hardware.SensorManager;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.app.Activity;
import android.widget.Toast;
public class MainActivity extends Activity {
//傳感器管理器
private SensorManager sm;
//距離傳感器
private Sensor sensor;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//1,通過獲取系統服務,得到傳感器管理器
sm=(SensorManager) getSystemService(SENSOR_SERVICE);
//2,通過傳感器管理器獲取指定的距離傳感器
sensor=sm.getDefaultSensor(Sensor.TYPE_PROXIMITY);
//3,通過傳感器管理器注冊監聽器,監聽距離傳感器的感應事件
sm.registerListener(new MyListener(), sensor, SensorManager.SENSOR_DELAY_GAME);
}
private class MyListener implements SensorEventListener{
@Override
public void onSensorChanged(SensorEvent event) {
float distance=event.values[0];
//System.out.println(val[0]);
Toast.makeText(MainActivity.this, ""+distance, 0).show();
//當手機在褲袋裡面時,距離為0
if (distance<1.0f) {
return;
}
//當手機脫離褲袋的時候,距離為1,播放音樂
playMusic();
}
private void playMusic() {
// 播放音樂
MediaPlayer mPlayer=MediaPlayer.create(MainActivity.this, R.drawable.alarm);
mPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
try {
mPlayer.prepare();
} catch (Exception e) {
e.printStackTrace();
}
//理論上應該異步准備,在准備完成的回調函數中啟動播放器
mPlayer.start();
}
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
}
}
}
Android之PULL解析XML
今天我們一起通過一個小例子來學習一下使用PULL解析器解析XML文件。 (1)首先我們放一個文件名為beauties.xml的XML文件到assets目錄下,文件內容如下
制作右下角箭頭的.9圖片
.9圖片介紹簡單了解.9圖片在APP中用的非常多,主要是為了防止圖片縮放後造成變形,確保圖片不失真。典型的就是微信的聊天界面,如對方信息長短不一,但背景使用的都是同一張圖
android項目 之 記事本(9) ----- 畫板功能之橡皮擦、畫筆大小和畫筆顏色
上節已實現了畫板中的繪制,刪除,恢復入清空的功能,還有橡皮擦,設置畫筆大小和畫筆顏色沒有實現,這節就將這幾個功能逐一實現。 先看效果圖:
Android仿京東首頁畫軸效果
記得之前京東首頁有一個效果,有一個畫軸,然後可以滾動畫軸,去打開畫(不知道怎麼去形容這個效果,就叫做畫軸效果吧- -!),然後去做相關操作,剛開始看到這個效果,想法是動態