Android 情景模式的設(shè)置代碼
更新時(shí)間:2013年05月30日 11:20:42 作者:
Android 情景模式的設(shè)置代碼,需要的朋友可以參考一下
情景模式的設(shè)置大家應(yīng)當(dāng)相當(dāng)熟悉了,但是在Android中如何通過自己的程序進(jìn)行情景模式的設(shè)置呢,情景模式分為多種多種,即可以使用系統(tǒng)自帶的,也可以使用自定義的,但是在開發(fā)某些程序時(shí),可能需要在程序中更改情景模式,那么此就需要進(jìn)行情景模式的設(shè)置。下面簡單介紹一下情況模式的設(shè)置方式:
首先獲取當(dāng)前的情景模式:
代碼
void getInitring(AudioManager audio)
{
//取得手機(jī)的初始音量,并初始化進(jìn)度條
int volume=audio.getStreamVolume(AudioManager.STREAM_RING); //取得初始音量
//取得初始模式,并分別設(shè)置圖標(biāo)
int mode=audio.getRingerMode(); //取得初始模式
}
通過此代碼,當(dāng)然需要再加工一下,那么就可以得到當(dāng)前的情景模式,為以后的設(shè)置做一下準(zhǔn)備,然后也可能知道要不要再次設(shè)置。
設(shè)置情景模式一:只聲音,無振動(dòng):
代碼
void ring(AudioManager audio) {
audio.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER,
AudioManager.VIBRATE_SETTING_OFF);
audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_NOTIFICATION,
AudioManager.VIBRATE_SETTING_OFF);
Toast.makeText(this, "設(shè)置成功!當(dāng)前為鈴聲", Toast.LENGTH_LONG).show();
}
設(shè)置后系統(tǒng)只有聲音,沒有振動(dòng)。
設(shè)置情景模式二:即有聲音也有振動(dòng):
代碼
void ringAndVibrate(AudioManager audio) {
audio.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER,
AudioManager.VIBRATE_SETTING_ON);
audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_NOTIFICATION,
AudioManager.VIBRATE_SETTING_ON);
Toast.makeText(this, "設(shè)置成功!當(dāng)前為鈴聲加振動(dòng)", Toast.LENGTH_LONG).show();
}
這樣設(shè)置后,在發(fā)聲的時(shí)候同時(shí)也會(huì)有振動(dòng)提醒。
設(shè)置情景模式三:只能振動(dòng):
代碼
void vibrate(AudioManager audio) {
audio.setRingerMode(AudioManager.RINGER_MODE_VIBRATE);
audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER,
AudioManager.VIBRATE_SETTING_ON);
audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_NOTIFICATION,
AudioManager.VIBRATE_SETTING_ON);
Toast.makeText(this, "設(shè)置成功!當(dāng)前為振動(dòng)", Toast.LENGTH_LONG).show();
}
此設(shè)置后只有振動(dòng),沒有聲音:
設(shè)置情景模式四:無聲無振動(dòng):
代碼
void noRingAndVibrate(AudioManager audio) {
audio.setRingerMode(AudioManager.RINGER_MODE_SILENT);
audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER,
AudioManager.VIBRATE_SETTING_OFF);
audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_NOTIFICATION,
AudioManager.VIBRATE_SETTING_OFF);
Toast.makeText(this, "設(shè)置成功!當(dāng)前為無聲無振動(dòng)", Toast.LENGTH_LONG).show();
}
設(shè)置后系統(tǒng)沒有聲音和振動(dòng)。無法進(jìn)行相應(yīng)的提示。
以上所有設(shè)置的聲音均為系統(tǒng)默認(rèn)的聲音大小,那么我們是否可以自定義聲音的大小呢,答案是當(dāng)然可以。要設(shè)置聲音的大小 ,需要設(shè)置以下函數(shù):
提高音量:
audio.adjustVolume(AudioManager.ADJUST_RAISE, 0);
減小音量:
audio.adjustVolume(AudioManager.ADJUST_LOWER, 0);
以上為最基本的設(shè)置方法,在使用中有許多更復(fù)雜的組合都是由此基本的方法組合而成的。
首先獲取當(dāng)前的情景模式:
代碼
復(fù)制代碼 代碼如下:
void getInitring(AudioManager audio)
{
//取得手機(jī)的初始音量,并初始化進(jìn)度條
int volume=audio.getStreamVolume(AudioManager.STREAM_RING); //取得初始音量
//取得初始模式,并分別設(shè)置圖標(biāo)
int mode=audio.getRingerMode(); //取得初始模式
}
通過此代碼,當(dāng)然需要再加工一下,那么就可以得到當(dāng)前的情景模式,為以后的設(shè)置做一下準(zhǔn)備,然后也可能知道要不要再次設(shè)置。
設(shè)置情景模式一:只聲音,無振動(dòng):
代碼
復(fù)制代碼 代碼如下:
void ring(AudioManager audio) {
audio.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER,
AudioManager.VIBRATE_SETTING_OFF);
audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_NOTIFICATION,
AudioManager.VIBRATE_SETTING_OFF);
Toast.makeText(this, "設(shè)置成功!當(dāng)前為鈴聲", Toast.LENGTH_LONG).show();
}
設(shè)置后系統(tǒng)只有聲音,沒有振動(dòng)。
設(shè)置情景模式二:即有聲音也有振動(dòng):
代碼
復(fù)制代碼 代碼如下:
void ringAndVibrate(AudioManager audio) {
audio.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER,
AudioManager.VIBRATE_SETTING_ON);
audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_NOTIFICATION,
AudioManager.VIBRATE_SETTING_ON);
Toast.makeText(this, "設(shè)置成功!當(dāng)前為鈴聲加振動(dòng)", Toast.LENGTH_LONG).show();
}
這樣設(shè)置后,在發(fā)聲的時(shí)候同時(shí)也會(huì)有振動(dòng)提醒。
設(shè)置情景模式三:只能振動(dòng):
代碼
復(fù)制代碼 代碼如下:
void vibrate(AudioManager audio) {
audio.setRingerMode(AudioManager.RINGER_MODE_VIBRATE);
audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER,
AudioManager.VIBRATE_SETTING_ON);
audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_NOTIFICATION,
AudioManager.VIBRATE_SETTING_ON);
Toast.makeText(this, "設(shè)置成功!當(dāng)前為振動(dòng)", Toast.LENGTH_LONG).show();
}
此設(shè)置后只有振動(dòng),沒有聲音:
設(shè)置情景模式四:無聲無振動(dòng):
代碼
復(fù)制代碼 代碼如下:
void noRingAndVibrate(AudioManager audio) {
audio.setRingerMode(AudioManager.RINGER_MODE_SILENT);
audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER,
AudioManager.VIBRATE_SETTING_OFF);
audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_NOTIFICATION,
AudioManager.VIBRATE_SETTING_OFF);
Toast.makeText(this, "設(shè)置成功!當(dāng)前為無聲無振動(dòng)", Toast.LENGTH_LONG).show();
}
設(shè)置后系統(tǒng)沒有聲音和振動(dòng)。無法進(jìn)行相應(yīng)的提示。
以上所有設(shè)置的聲音均為系統(tǒng)默認(rèn)的聲音大小,那么我們是否可以自定義聲音的大小呢,答案是當(dāng)然可以。要設(shè)置聲音的大小 ,需要設(shè)置以下函數(shù):
提高音量:
復(fù)制代碼 代碼如下:
audio.adjustVolume(AudioManager.ADJUST_RAISE, 0);
減小音量:
復(fù)制代碼 代碼如下:
audio.adjustVolume(AudioManager.ADJUST_LOWER, 0);
以上為最基本的設(shè)置方法,在使用中有許多更復(fù)雜的組合都是由此基本的方法組合而成的。
您可能感興趣的文章:
- Android主題切換之探究白天和夜間模式
- AndroidSDK Support自帶夜間、日間模式切換詳解
- Android夜間模式最佳實(shí)踐
- android基礎(chǔ)教程之夜間模式實(shí)現(xiàn)示例
- javascript判斷iphone/android手機(jī)橫豎屏模式的函數(shù)
- Android 聽筒模式的具體實(shí)現(xiàn)實(shí)例
- android 如何判斷當(dāng)前是否為飛行模式
- Android開發(fā)之文件操作模式深入理解
- Android 如何定制vibrator的各種震動(dòng)模式M 具體方法
- 三行Android代碼實(shí)現(xiàn)白天夜間模式流暢切換
相關(guān)文章
Kotlin淺析延遲初始化與密封類的實(shí)現(xiàn)方法
Kotlin語言的許多特性,包括變量不可變,變量不可為空,等等。這些特性都是為了盡可能地保證程序安全而設(shè)計(jì)的,但是有些時(shí)候這些特性也會(huì)在編碼時(shí)給我們帶來不少的麻煩,下面我們來了解延遲初始化和密封類的特點(diǎn)2022-08-08Android MarkTipsView文字標(biāo)識(shí)控件使用方法
這篇文章主要為大家詳細(xì)介紹了Android MarkTipsView文字標(biāo)識(shí)控件的使用方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-04-04android中實(shí)現(xiàn)OkHttp下載文件并帶進(jìn)度條
本篇文章主要介紹了android中實(shí)現(xiàn)OkHttp下載文件并帶進(jìn)度條,OkHttp是比較火的網(wǎng)絡(luò)框架,它支持同步與異步請(qǐng)求,支持緩存,可以攔截,更方便下載大文件與上傳文件的操作,有興趣的可以了解一下2017-07-07Android計(jì)算器簡單邏輯實(shí)現(xiàn)實(shí)例分享
這篇文章主要介紹了Android計(jì)算器簡單邏輯實(shí)現(xiàn)實(shí)例,有需要的朋友可以參考一下2014-01-01Android實(shí)現(xiàn)手勢(shì)滑動(dòng)多點(diǎn)觸摸縮放平移圖片效果(二)
這篇文章主要介紹了Android實(shí)現(xiàn)手勢(shì)滑動(dòng)多點(diǎn)觸摸縮放平移圖片效果,實(shí)現(xiàn)圖片支持多點(diǎn)觸控,自由的進(jìn)行縮放、平移的注意事項(xiàng),感興趣的小伙伴們可以參考一下2016-02-02Android自定義View之RadioGroup實(shí)現(xiàn)跨多行顯示
這篇文章主要介紹了Android自定義View之RadioGroup實(shí)現(xiàn)跨多行顯示,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-11-11