package com.yarin.Andriod.Test4;
import java.util.Calendar;
import android.app.AlarmManager;
import android.app.PendingIntent;
import android.app.TabActivity;
import android.app.TimePickerDialog;
import android.content.Context;
import android.content.Intent;
import android.graphics.Color;
import android.media.AudioManager;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.View;
import android.view.Window;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ProgressBar;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.SeekBar;
import android.widget.TabHost;
import android.widget.TextView;
import android.widget.TimePicker;
import android.widget.Toast;
import android.widget.SeekBar.OnSeekBarChangeListener;
import android.widget.TabHost.OnTabChangeListener;
public class MyTab extends TabActivity implements OnTabChangeListener, OnSeekBarChangeListener {
private TabHost myTabhost;
protected int myMenuSettingTag = 0;
protected Menu myMenu;
// 各个标签页的动态MENU
// 先把在XML中设计好的MENU放到一个int数组里
private static final int myMenuResources[] = { R.menu.a_menu,
R.menu.b_menu, R.menu.c_menu };
RadioGroup radiogroup;
RadioButton radio1, radio2, radio3, radio4;
Calendar calendar;
Button button1, button2;
TextView mTv;
// 申明seekBar
SeekBar mSeekBar;
int seekNum = 0;
private ProgressBar m_ProgressBar;
private Button bPB1, bPB2;
//每次增加或减少的数目
private final static int increes = 10;
@Override
public void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
//设置窗口模式,因为需要显示进度条在标题栏
requestWindowFeature(Window.FEATURE_PROGRESS);
setProgressBarVisibility(true);
super.onCreate(savedInstanceState);
// ////////////////////////首先,应该声明TabHost,然后用LayoutInflater过滤出布局来,给TabHost加上含有Tab页面的FrameLayout
// begin
myTabhost = this.getTabHost();
// 从TabActivity上面获取放置Tab的TabHost
LayoutInflater.from(this).inflate(R.layout.main,
myTabhost.getTabContentView(), true);
// from(this)从这个TabActivity获取LayoutInflater
// R.layout.main 存放Tab布局
// 通过TabHost获得存放Tab标签页内容的FrameLayout
// 是否将inflate 拴系到根布局元素上
myTabhost.setBackgroundColor(Color.argb(150, 22, 70, 150));
// 设置一下TabHost的颜色
// ////////////////////////首先,应该声明TabHost,然后用LayoutInflater过滤出布局来,给TabHost加上含有Tab页面的FrameLayout
// end
// ////////////////////////接着,在TabHost创建一个标签,然后设置一下标题/图标/标签页布局 begin
myTabhost.addTab(myTabhost.newTabSpec("One")// make a new Tab
.setIndicator("普通情景模式",
getResources().getDrawable(R.drawable.gimp))
// set the Title and Icon
.setContent(R.id.widget_layout_Blue));
// set the layout
myTabhost.addTab(myTabhost.newTabSpec("Two")// make a new Tab
.setIndicator("定时情景模式",
getResources().getDrawable(R.drawable.mumule))
// set the Title and Icon
.setContent(R.id.widget_layout_red));
// set the layout
myTabhost.addTab(myTabhost.newTabSpec("Three")// make a new Tab
.setIndicator("自定义情景模式",
getResources().getDrawable(R.drawable.notepad))
// set the Title and Icon
.setContent(R.id.widget_layout_green));
// set the layout
// ////////////////////////接着,在TabHost创建一个标签,然后设置一下标题/图标/标签页布局end
myTabhost.setOnTabChangedListener(this);
// ***************************************************普通情景模式的设置begin
radiogroup = (RadioGroup) findViewById(R.id.widget34);
radio1 = (RadioButton) findViewById(R.id.widget35);
radio2 = (RadioButton) findViewById(R.id.widget36);
radio3 = (RadioButton) findViewById(R.id.widget37);
radio4 = (RadioButton) findViewById(R.id.widget38);
radiogroup
.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
/* 建立Intent*/
Intent intent = new Intent("android.provider.Telephony.SMS_RECEIVER");
if (radio1.getId() == checkedId) {
alert("铃声和震动");
intent.putExtra("checkedId", R.id.widget35);
} else if (radio2.getId() == checkedId) {
alert("铃声");
intent.putExtra("checkedId", R.id.widget36);
} else if (radio3.getId() == checkedId) {
alert("震动");
intent.putExtra("checkedId", R.id.widget37);
} else if (radio4.getId() == checkedId) {
alert("静音");
intent.putExtra("checkedId", R.id.widget38);
}
// 发送广播
sendBroadcast(intent);
}
});
// ***************************************************普通情景模式的设置end
// ***************************************************闹钟的设置begin
button1 = (Button) findViewById(R.id.Button01);
button2 = (Button) findViewById(R.id.Button02);
mTv = (TextView) findViewById(R.id.TextView01);
calendar = Calendar.getInstance();
// 设置闹钟 按钮点击时的处理
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
calendar.setTimeInMillis(System.currentTimeMillis());
int mHour = calendar.get(Calendar.HOUR_OF_DAY);
int mMinute = calendar.get(Calendar.MINUTE);
new TimePickerDialog(MyTab.this,
new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker view,
int hourOfDay, int minute) {
calendar.setTimeInMillis(System
.currentTimeMillis());
calendar.set(Calendar.HOUR_OF_DAY, hourOfDay);
calendar.set(Calendar.MINUTE, minute);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
/* 建立Intent和PendingIntent来调用目标组件 */
Intent intent = new Intent(MyTab.this,
AlermReceiver.class);
PendingIntent pendingIntent = PendingIntent
.getBroadcast(MyTab.this, 0, intent, 0);
AlarmManager am;
// 获取闹钟管理的实例
am = (AlarmManager) getSystemService(ALARM_SERVICE);
// 设置闹钟
am.set(AlarmManager.RTC_WAKEUP, calendar
.getTimeInMillis(), pendingIntent);
// 设置周期闹钟
am.setRepeating(AlarmManager.RTC_WAKEUP, System
.currentTimeMillis()
+ (10 * 1000), (24 * 60 * 60 * 1000),
pendingIntent);
String tmps = "设置闹钟时间为" + format(hourOfDay)
+ ":" + format(minute);
mTv.setText(tmps);
}
}, mHour, mMinute, true).show();
}
});
// ***************************************************闹钟的设置end
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MyTab.this, AlermReceiver.class);
PendingIntent pendingInteng = PendingIntent.getBroadcast(MyTab.this, 0, intent, 0);
AlarmManager am;
// 获取闹钟管理的实例
am = (AlarmManager) getSystemService(ALARM_SERVICE);
am.cancel(pendingInteng);
mTv.setText("闹钟已取消!");
}
});
// ***************************************************自定义模式的设置begin
m_ProgressBar = (ProgressBar)findViewById(R.id.pb);
//增加按钮
bPB1 = (Button)findViewById(R.id.bPB1);
//减少按钮
bPB2 = (Button)findViewById(R.id.bPB2);
m_ProgressBar.setIndeterminate(false);
m_ProgressBar.setVisibility(0);
m_ProgressBar.setMax(100);
// 获取当前的音量,并将这个值赋到进度条中
AudioManager audio = (AudioManager) getSystemService(this.AUDIO_SERVICE);
int tmps = audio.getStreamVolume(AudioManager.STREAM_RING);
audio = null;
m_ProgressBar.setProgress(tmps);
//增加按钮调节
bPB1.setOnClickListener(new
没有合适的资源?快使用搜索试试~ 我知道了~
android 音量控制 定时 震动 静音 铃声 情景模式 设置
共45个文件
class:16个
png:13个
xml:6个
4星 · 超过85%的资源 需积分: 43 635 下载量 192 浏览量
2010-05-25
10:47:52
上传
评论 9
收藏 170KB RAR 举报
温馨提示
里面有的内容可能你不需要,有的内容可以扩充。 这个是关于android手机情景模式设置的小例子。希望对大家有利
资源推荐
资源详情
资源评论
收起资源包目录
Test4.rar (45个子文件)
Test4
bin
classes.dex 14KB
com
yarin
Andriod
Test4
MyTab$1.class 2KB
MyTab$4.class 1KB
R$layout.class 409B
R$id.class 1KB
R$drawable.class 690B
MyTab$2.class 1KB
MyTab$3.class 2KB
RingBroadcastReceiver.class 3KB
R$attr.class 355B
R$menu.class 465B
R.class 617B
MyTab$2$1.class 3KB
MyTab$5.class 1KB
AlermReceiver.class 958B
R$string.class 626B
MyTab.class 7KB
resources.ap_ 45KB
Test4.apk 54KB
res
drawable-ldpi
icon.png 2KB
menu
a_menu.xml 253B
b_menu.xml 257B
c_menu.xml 253B
drawable-hdpi
icon.png 4KB
drawable
back_green.png 5KB
back_blue.png 5KB
icon.png 3KB
back_red.png 4KB
tab_b.png 6KB
gimp.png 4KB
tab_c.png 5KB
tab_a.png 4KB
notepad.png 5KB
mumule.png 4KB
values
strings.xml 438B
drawable-mdpi
icon.png 3KB
layout
main.xml 3KB
assets
default.properties 449B
gen
com
yarin
Andriod
Test4
R.java 3KB
src
com
yarin
Andriod
Test4
MyTab.java 11KB
RingBroadcastReceiver.java 3KB
AlermReceiver.java 476B
.project 841B
.classpath 280B
AndroidManifest.xml 812B
共 45 条
- 1
zy_cl
- 粉丝: 9
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
- 5
- 6
前往页