private void ShowAppleDialog() {
AlertDialog.Builder db = new AlertDialog.Builder(this);
LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = inflater.inflate(R.layout.apple_dialog, null);
db.setView(view);
db.setIcon(R.drawable.bg_settings_min);
db.setTitle(getString(R.string.device_settings));
dialogDeviceName = (EditText)view.findViewById(R.id.dialog_device_name);
dialogPassword = (EditText)view.findViewById(R.id.dialog_device_pas);
showPassword = (CheckBox)view.findViewById(R.id.showPassword);
StatusOn = (RadioButton)view.findViewById(R.id.status_on);
StatusOff = (RadioButton)view.findViewById(R.id.status_off);
StatusOn.setOnClickListener(this);
StatusOff.setOnClickListener(this);
SharedPreferences pres = getSharedPreferences(APPLE_DEVICE,Context.MODE_WORLD_READABLE);
if(pres != null){
mDeviceName = pres.getString("DEVICE_NAME", Build.MODEL);
mPassword = pres.getString("PASSWORD", "");
dialogDeviceName.setText(mDeviceName);
dialogPassword.setText(mPassword);
mDeviceStatus = pres.getBoolean("DEVICE_STATUS", true);
if(mDeviceStatus){
StatusOn.setChecked(true);
}else{
StatusOff.setChecked(true);
}
}
showPassword.setChecked(false);
showPassword.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton arg0, boolean arg1) {
if (showPassword.isChecked())
dialogPassword.setTransformationMethod(HideReturnsTransformationMethod.getInstance());
else
dialogPassword.setTransformationMethod(PasswordTransformationMethod.getInstance());
}
});
db.setPositiveButton(getString(R.string.app_save), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,int which) {
String mName = dialogDeviceName.getText().toString();
if(mName.length() == 0){
Toast.makeText(mContext, getString(R.string.device_name_null),Toast.LENGTH_LONG).show();
//用于不关闭对话框
try{
Field field = dialog.getClass().getSuperclass().getDeclaredField("mShowing");
field.setAccessible(true);
field.set(dialog, false);
} catch (Exception e) {
e.printStackTrace();
}
}else{
SharedPreferences pres = getSharedPreferences(APPLE_DEVICE,Context.MODE_WORLD_READABLE);
if(pres != null){
final Editor ed = pres.edit();
ed.putString("DEVICE_NAME",dialogDeviceName.getText().toString());
ed.putString("PASSWORD",dialogPassword.getText().toString());
ed.putBoolean("DEVICE_STATUS", isDeviceStatus);
ed.commit();
Log.d(TAG, "Success save device info ...");
mDeviceName = pres.getString("DEVICE_NAME", Build.MODEL);
mPassword = pres.getString("PASSWORD", "");
mDeviceStatus = pres.getBoolean("DEVICE_STATUS", true);
deviceName.setText(mDeviceName);
if (mDeviceStatus){
deviceStatus.setText(getString(R.string.device_on));
}else{
deviceStatus.setText(getString(R.string.device_off));
}
// Intent intent1 = new Intent();
// intent1.setAction("dapple.intent.action.SETTING_FINISH");
// intent1.putExtra("player_name", mDeviceName);
// intent1.putExtra("player_password", mPassword);
// intent1.putExtra("service", "on");
// sendBroadcast(intent1);
}else{
Log.d(TAG, "device info Failure...");
}
//用于关闭对话框
try {
Field field = dialog.getClass().getSuperclass().getDeclaredField("mShowing");
field.setAccessible(true);
field.set(dialog, true);
} catch (Exception e) {
e.printStackTrace();
}
}
}
});
db.setNegativeButton(getString(R.string.app_cancel), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//用于关闭对话框
try {
Field field = dialog.getClass().getSuperclass().getDeclaredField("mShowing");
field.setAccessible(true);
field.set(dialog, true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
AlertDialog d = db.create();
d.setInverseBackgroundForced(true);
d.show();
}