package com.jiuqi.njt.ui;
import java.util.ArrayList;
import android.app.Activity;
import android.content.DialogInterface;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.SeekBar;
import android.widget.SeekBar.OnSeekBarChangeListener;
import android.widget.TextView;
import com.jiuqi.njt.R;
import com.jiuqi.njt.util.Constants;
import com.jiuqi.njt.util.TitleBarUtil;
import com.jiuqi.njt.widget.DialogWithList;
import com.jiuqi.njt.widget.DialogWithList.Builder;
public class VoiceSet extends Activity {
// private Spinner sp1;
private Button myButton;
private SeekBar sk1;
private SeekBar sk2;
private SeekBar sk3;
// private ArrayAdapter<String> adapterName;
// private ArrayAdapter<String> adapterSpeed;
// private ArrayAdapter<String> adapterVolume;
// private SpinnerAdaper adapter;
private String name;
private String speed;
private String volume;
private String pitch;
private String isShow;
private String isRead;
private String isWeatherPush;
private String[] Nentries;
private String[] Nvalues;
private CheckBox cb;
private CheckBox voice_push_check;
private CheckBox weather_push_check;
private SharedPreferences Voice;
private Button reset;
SharedPreferences.Editor edit;
private TextView voiceBar1, voiceBar2, voiceBar3;
private String isReceiverJobPush;
private CheckBox receiver_jobPush_check;
private CheckBox notice_push_check;
private CheckBox notice_read_check;
private String isReadNotice;
private String isPushNotice;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.voice_set);
initView();
}
private void initView() {
View rlTitleBar = findViewById(R.id.titleBarStub_set);
TitleBarUtil.createTitleBar(this, rlTitleBar, "软件设置",
new OnClickListener() {
@Override
public void onClick(View v) {
VoiceSet.this.finish();
}
});
Nentries = this.getResources().getStringArray(
R.array.preference_entries_tts_role);
Nvalues = this.getResources().getStringArray(
R.array.preference_values_tts_role);
Voice = this.getSharedPreferences(Constants.SOFTSET_SHEAREFILENAME, 0);
name = Voice.getString("name", "xiaoyan");
speed = Voice.getString("speed", "50");
volume = Voice.getString("volume", "50");
pitch = Voice.getString("pitch", "50");
isShow = Voice.getString("isShow", "yes");
isRead = Voice.getString("isRead", "no");
isPushNotice = Voice.getString("isPush", "yes");
isReadNotice = Voice.getString("isRead", "yes");
isWeatherPush = Voice.getString("isWeatherPush", "yes");
isReceiverJobPush = Voice.getString("isReceiverJobPush", "yes");
System.out.println(name + speed + volume);
reset = (Button) findViewById(R.id.reset_voice);
// sp1 = (Spinner) findViewById(R.id.voicename);
sk1 = (SeekBar) findViewById(R.id.voiceseekBar1);// 音量
sk2 = (SeekBar) findViewById(R.id.VoiceseekBar2);// 语速
sk3 = (SeekBar) findViewById(R.id.VoiceseekBar3);// 音调
cb = (CheckBox) findViewById(R.id.checkBox1_Voice);// 是否显示提示框
voice_push_check = (CheckBox) findViewById(R.id.checkBox2_Voice);// 推送是否播报
weather_push_check = (CheckBox) findViewById(R.id.checkbox_weatherPush);// 天气信息是否推送
receiver_jobPush_check = (CheckBox) findViewById(R.id.receiver_jobPush_check);// 是否接收作业信息
notice_push_check = (CheckBox) findViewById(R.id.push_notice_check);// 推送公告通知
notice_read_check = (CheckBox) findViewById(R.id.read_notice_check);// 播报公告通知
voiceBar1 = (TextView) findViewById(R.id.voiceBar1);
voiceBar2 = (TextView) findViewById(R.id.voiceBar2);
voiceBar3 = (TextView) findViewById(R.id.voiceBar3);
myButton = (Button) findViewById(R.id.myButton);
sk1.setMax(100);
sk2.setMax(100);
sk3.setMax(100);
sk1.setProgress(Integer.parseInt(volume));
sk2.setProgress(Integer.parseInt(speed));
sk3.setProgress(Integer.parseInt(pitch));
voiceBar1.setText(volume);
voiceBar2.setText(speed);
voiceBar3.setText(pitch);
if (isShow.equals("yes")) {
cb.setChecked(true);
} else if (isShow.equals("no")) {
cb.setChecked(false);
}
if (isRead.equals("yes")) {
voice_push_check.setChecked(true);
} else {
voice_push_check.setChecked(false);
}
if (isWeatherPush.equals("yes")) {
weather_push_check.setChecked(true);
} else {
weather_push_check.setChecked(false);
}
if (isReceiverJobPush.equals("yes")) {
receiver_jobPush_check.setChecked(true);
} else {
receiver_jobPush_check.setChecked(false);
}
if (isPushNotice.equals("yes")) {
notice_push_check.setChecked(true);
} else {
notice_push_check.setChecked(false);
}
if (isReadNotice.equals("yes")) {
notice_read_check.setChecked(true);
} else {
notice_read_check.setChecked(false);
}
myButton.setText(convertToName(name));
reset.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// sp1.setSelection(0);
myButton.setText(Nentries[0]);
sk1.setProgress(50);
sk2.setProgress(50);
sk3.setProgress(50);
cb.setChecked(true);
notice_push_check.setChecked(false);
voice_push_check.setChecked(false);
weather_push_check.setChecked(true);
receiver_jobPush_check.setChecked(true);
edit = Voice.edit();
edit.putString("name", "xiaoyan");
edit.putString("speed", "50");
edit.putString("volume", "50");
edit.putString("pitch", "50");
edit.putString("isShow", "yes");
edit.putString("isWeatherPush", "yes");
edit.putString("isReceiverJobPush", "yes");
edit.putBoolean(Constants.RECEIVERNOTICE, true);
edit.putBoolean(Constants.READNOTICE, true);
edit.commit();
}
});
cb.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
if (isChecked) {
edit = Voice.edit();
isShow = "yes";
edit.putString("isShow", "yes");
edit.commit();
System.out.println("isShow-------" + isShow);
} else if (!isChecked) {
edit = Voice.edit();
isShow = "no";
edit.putString("isShow", "no");
edit.commit();
System.out.println("isShow-------" + isShow);
}
}
});
voice_push_check
.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
if (isChecked) {
edit = Voice.edit();
isRead = "yes";
edit.putString("isRead", "yes");
edit.commit();
System.out.println("isRead-------" + isRead);
} else if (!isChecked) {
edit = Voice.edit();
isRead = "no";
edit.putString("isRead", "no");
edit.commit();
System.out.println("isRead-------" + isRead);
}
}
});
weather_push_check
.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
if (isChecked) {
edit = Voice.edit();
isWeatherPush = "yes";
edit.putString("isWeatherPush", "yes");
edit.commit();
System.out.println("isWeatherPush-------"
+ isWeatherPush);
} else if (!isChecked) {
edit = Voice.edit();
isWeatherPush = "no";
edit.putString("isWeatherPush", "no");
edit.commit();
System.out.println("isWeatherPush-------"
+ isWeatherPush);
}
}
});
receiver_jobPush_check
.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
if (isChecked) {
edit = Voice.edit();
isReceiverJobPush = "yes";
edit.putString("isReceiverJobPush", "yes");
edit.commit();
} else if (!isChecked) {
edit = Voice.edit();
isReceiverJobPush = "no";
edit.putString("isReceiverJobPush", "no");
edit.commit();
}
}
});
notice_push_check
.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
if (isChecked) {
edit = Voice.edit();
isPushNotice = "yes";
edit.putString("isPush", "yes");
edit.commit();
} else if (!isChecked) {
edit = Voice.edit();
isPushNotice = "no";
edit.putString("isPush", "no");
edit.commit();
// 关闭推送公告,则关闭播报公告
notice_read_check.setChecked(false);
}
}
});
notice_read_check
.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
if (isChecked) {
edit = Voice.edit();
isReadNotice = "yes";
edit.putString("isRead", "yes");
edit.commit();
// 打开播报公告,则打开推送播报
notice_push_check.setChecked(true);
} else if (!isChecked) {
edit = Voice.edit();
isReadNotice = "no";
edit.putString("isRead", "no");
edit.commit();
}
}
});
// notice_push_check
// .setOnCheckedChangeListener(new OnCheckedChangeListener() {
//
// @Override
// public void onCheckedChanged(CompoundButton buttonView,
// boolean isChecked) {
// edit = Voice.edit();
// edit.putBoolean(Constants.RECEIVERNOTICE, isChecked);
// edit.commit();
//
// }
// });
// notice_read_check
// .setOnCheckedChangeListener(new OnCheckedChangeListener() {
//
// @Override
// public void onCheckedChanged(CompoundButton buttonView,
// boolean isChecked) {
// edit = Voice.edit();
// edit.putBoolean(Constants.READNOTICE, isChecked);
// edit.commit();
//
// }
// });
ArrayList<String> dataList1 = new ArrayList<String>();
for (int n = 0; n < Nentries.length; n++) {
dataList1.add(Nentries[n]);
}
System.out.println(dataList1.toString());
final Builder dialog = new DialogWithList.Builder(this);
dialog.setTitle("发音人");
dialog.setPositiveButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
dialog.dismiss();
}
});
dialog.setAdapter(true);
dialog.setItems(Nentries, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
myButton.setText(Nentries[which]);
edit = Voice.edit();
name = Nvalues[which];
edit.putString("name", name);
edit.commit();
dialog.dismiss();
}
});
myButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
dialog.create().show();
}
});
// adapterName = new ArrayAdapter<String>(VoiceSet.this,
// android.R.layout.simple_spinner_item, dataList1);
// adapterName
// .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
//
// sp1.setAdapter(adapterName);
// for (int n = 0; n < Nvalues.length; n++) {
// if (Nvalues[n].equals(name)) {
// sp1.setSelection(n);
// }
// }
// sp1.setOnItemSelectedListener(new OnItemSelectedListener() {
//
// @Override
// public void onItemSelected(AdapterView<?> arg0, View arg1,
// int arg2, long arg3) {
// TextView tv = (TextView)arg1;
// tv.setTextColor(getResources().getColor(R.color.softsetting_number_textcolor));
// //设置颜色
// edit = Voice.edit();
// name = Nvalues[arg2];
// edit.putString("name", name);
// edit.commit();
// System.out.println("name-----" + name);
// }
//
// @Override
// public void onNothingSelected(AdapterView<?> arg0) {
// // TODO Auto-generated method stub
//
// }
// });
sk1.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
edit = Voice.edit();
volume = seekBar.getProgress() + "";
edit.putString("volume", volume);
edit.commit();
System.out.println("volume-----" + volume);
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
@Override
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
voiceBar1.setText(progress + "");
}
});
sk2.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
edit = Voice.edit();
speed = seekBar.getProgress() + "";
edit.putString("speed", speed);
edit.commit();
System.out.println("speed-----------" + speed);
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
@Override
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
voiceBar2.setText(progress + "");
}
});
sk3.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
edit = Voice.edit();
pitch = seekBar.getProgress() + "";
edit.putString("pitch", pitch);
edit.commit();
System.out.println("pitch-----------" + pitch);
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
@Override
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
voiceBar3.setText(progress + "");
}
});
}
private String convertToName(String name) {
for (int i = 0; i < Nvalues.length; i++) {
if (name.equals(Nvalues[i])) {
return Nentries[i];
}
}
return name;
}
}