package com.kaixin.android.activity;
import android.app.AlertDialog;
import android.app.AlertDialog.Builder;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.os.Bundle;
import android.preference.Preference;
import android.preference.Preference.OnPreferenceClickListener;
import android.preference.PreferenceActivity;
import com.kaixin.android.R;
/**
* 设置类
*
* @author gyz
*
*/
public class SettingsActivity extends PreferenceActivity implements
OnPreferenceClickListener {
private Preference mMessageRefreshInterval;
private Preference mNewMessageDetectInterval;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.settings);
findViewByKey();
setListener();
}
private void findViewByKey() {
mMessageRefreshInterval = (Preference) findPreference("message_refresh_interval");
mNewMessageDetectInterval = (Preference) findPreference("new_message_detect_interval");
}
private void setListener() {
mMessageRefreshInterval.setOnPreferenceClickListener(this);
mNewMessageDetectInterval.setOnPreferenceClickListener(this);
}
public boolean onPreferenceClick(Preference preference) {
if (preference == mMessageRefreshInterval) {
RefreshDialog();
} else if (preference == mNewMessageDetectInterval) {
DetectDialog();
}
return false;
}
/**
* 刷新间隔对话框
*/
private void RefreshDialog() {
final String[] items = { "半小时", "1小时", "2小时", "4小时" };
AlertDialog.Builder builder = new Builder(this);
builder.setTitle("刷新间隔");
builder.setSingleChoiceItems(items, 0, new OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
mMessageRefreshInterval.setSummary(items[which]);
dialog.dismiss();
}
});
builder.create().show();
}
/**
* 新消息检测时间间隔对话框
*/
private void DetectDialog() {
final String[] items = { "1分钟", "10分钟", "30分钟", "1小时", "2小时", "4小时" };
AlertDialog.Builder builder = new Builder(this);
builder.setTitle("新消息检测时间间隔");
builder.setSingleChoiceItems(items, 0, new OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
mNewMessageDetectInterval.setSummary(items[which]);
dialog.dismiss();
}
});
builder.create().show();
}
}