⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ringprofile.java

📁 android项目实战 7个经典的例子
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
package com.yarin.android.RingProfile;import java.util.Date;import android.app.AlarmManager;import android.app.PendingIntent;import android.app.TabActivity;import android.content.Context;import android.content.Intent;import android.media.AudioManager;import android.os.Bundle;import android.util.Log;import android.view.MotionEvent;import android.view.View;import android.view.View.OnTouchListener;import android.widget.Button;import android.widget.ImageButton;import android.widget.ImageView;import android.widget.ProgressBar;import android.widget.RadioButton;import android.widget.RadioGroup;import android.widget.TabHost;import android.widget.TimePicker;import android.widget.RadioGroup.OnCheckedChangeListener;import android.widget.TabHost.OnTabChangeListener;public class RingProfile extends TabActivity{	private static final String TAG="RingToggle";		//声明TabHost对象	private TabHost mTabHost;	protected boolean isChange;		private AlarmManager mAlarmManager;		private TimePicker mTimePicker ;		private int mTab;		private ImageView			myImage;	private ImageButton			downButton;	private ImageButton			upButton;	private ImageButton			normalButton;	private ImageButton			muteButton;	private ImageButton			vibrateButton;	private ProgressBar			myProgress;	private AudioManager		audioMa;	private int					volume	= 0;	  	@Override	public void onCreate(Bundle savedInstanceState)	{		super.onCreate(savedInstanceState);		setContentView(R.layout.main);				//取得TabHost对象		mTabHost = getTabHost();	    		/* 为TabHost添加标签 */		//新建一个newTabSpec(newTabSpec)		//设置其标签和图标(setIndicator)		//设置内容(setContent)	    mTabHost.addTab(mTabHost.newTabSpec("tab_test1")	    		.setIndicator("普通情景模式",getResources().getDrawable(R.drawable.icon))	    		.setContent(R.id.RadioGroup01));	    mTabHost.addTab(mTabHost.newTabSpec("tab_test2")	    		.setIndicator("定时情景模式",getResources().getDrawable(R.drawable.timeprofile))	    		.setContent(R.id.RelativeLayout01));	    mTabHost.addTab(mTabHost.newTabSpec("tab_test3")	    		.setIndicator("自定义情景模式",getResources().getDrawable(R.drawable.addprofile))	    		.setContent(R.id.AbsoluteLayout03));        	    //设置TabHost的背景图片资源	    mTabHost.setBackgroundResource(R.drawable.bg);	    	    //设置当前显示哪一个标签	    mTabHost.setCurrentTab(0);	    mTab = 0;	    updateRadioGroup();	    	    //初始化,取得AudioManager	    audioMa = (AudioManager)getSystemService(Context.AUDIO_SERVICE);	    myImage = (ImageView)findViewById(R.id.myImage); 	    myProgress = (ProgressBar)findViewById(R.id.myProgress); 	    downButton = (ImageButton)findViewById(R.id.downButton); 	    upButton = (ImageButton)findViewById(R.id.upButton); 	    normalButton = (ImageButton)findViewById(R.id.normalButton); 	    muteButton = (ImageButton)findViewById(R.id.muteButton); 	    vibrateButton = (ImageButton)findViewById(R.id.vibrateButton); 	    	    	    //标签切换事件处理,setOnTabChangedListener 	    mTabHost.setOnTabChangedListener(new OnTabChangeListener()	    {            @Override            public void onTabChanged(String tabId)             {            	if ( tabId.equals("tab_test1") )				{            		mTab = 0;            		                    mAlarmManager = (AlarmManager)getSystemService(Context.ALARM_SERVICE);                    mTimePicker = (TimePicker)findViewById(R.id.timePkr);                    mTimePicker.setIs24HourView(true);                                                    		updateRadioGroup();				}            	else if ( tabId.equals("tab_test2") )				{            		mTab = 1;                    mAlarmManager = (AlarmManager)getSystemService(Context.ALARM_SERVICE);                    mTimePicker = (TimePicker)findViewById(R.id.timePkr);                    mTimePicker.setIs24HourView(true);                                		updateRadioGroup();				}            }                    });                /***************************************************************/        RadioGroup group1 = (RadioGroup) findViewById(R.id.RadioGroup01);        group1.setOnCheckedChangeListener(new OnCheckedChangeListener()         {        	public void onCheckedChanged(RadioGroup group, int checkedId)         	{            	if (isChange)            		return;                         	switch (checkedId)            	{                           		case R.id.ring_and_vibrate01: ringAndVibrate(); break;                           		case R.id.ring01: ring(); break;                               		case R.id.vibrate01: vibrate(); break;                                          		case R.id.silent01: silent(); break;                           	}                          	RadioButton radio = (RadioButton) findViewById(checkedId);                           	if (radio != null)            	            		radio.setTextSize(30);                      	}	        });        //RadioButton添加监听器        for (int i = 0, l = group1.getChildCount(); i < l; i++)         {           	RadioButton radio = (RadioButton) group1.getChildAt(i);            radio.setOnTouchListener(new OnTouchListener()             {                           	public boolean onTouch(View v, MotionEvent event)                             	{        				            		RadioButton radio = (RadioButton) v;               	            		if (!radio.isChecked())                  		            			return false;             		            		radio.setTextSize(30);                                   		                                        		            		return false;                                        	            	}                           });        }        /***************************************************************/        //添加onChangeListener        RadioGroup group2 = (RadioGroup) findViewById(R.id.RadioGroup02);        group2.setOnCheckedChangeListener(new OnCheckedChangeListener()         {        	public void onCheckedChanged(RadioGroup group, int checkedId)         	{            	if (isChange)            		return;                         	switch (checkedId)            	{                           		case R.id.ring_and_vibrate02: ringAndVibrate(); break;                           		case R.id.ring02: ring(); break;                               		case R.id.vibrate02: vibrate(); break;                                          		case R.id.silent02: silent(); break;                           	}                          	RadioButton radio = (RadioButton) findViewById(checkedId);                           	if (radio != null)            	            		radio.setTextSize(30);                      	}	        });        //RadioButton添加监听器        for (int i = 0, l = group2.getChildCount(); i < l; i++)         {           	RadioButton radio = (RadioButton) group2.getChildAt(i);            radio.setOnTouchListener(new OnTouchListener()             {                           	public boolean onTouch(View v, MotionEvent event)                             	{        				            		RadioButton radio = (RadioButton) v;               	            		if (!radio.isChecked())                  		            			return false;             		            		radio.setTextSize(30);                                   		                                        		            		return false;                                        	            	}                           });        }                //取得手机的初始音量,并初始化进度条        volume=audioMa.getStreamVolume(AudioManager.STREAM_RING);         myProgress.setProgress(volume);        //取得初始模式,并分别设置图标        int mode=audioMa.getRingerMode();        if(mode==AudioManager.RINGER_MODE_NORMAL)        {          myImage.setImageDrawable(getResources()                                   .getDrawable(R.drawable.icon));        }        else if(mode==AudioManager.RINGER_MODE_SILENT)        {          myImage.setImageDrawable(getResources()                                   .getDrawable(R.drawable.mute));        }        else if(mode==AudioManager.RINGER_MODE_VIBRATE)        {          myImage.setImageDrawable(getResources()                                   .getDrawable(R.drawable.vibrate));        }        //降低音量按键        downButton.setOnClickListener(new Button.OnClickListener()         {           @Override           public void onClick(View arg0)           {        	//adjustVolume可以增加和降低音量            audioMa.adjustVolume(AudioManager.ADJUST_LOWER, 0);             volume=audioMa.getStreamVolume(AudioManager.STREAM_RING);            //设置进度条            myProgress.setProgress(volume);            //设置图标            int mode=audioMa.getRingerMode();

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -