PDA

Ver la Versión Completa : [ CONSULTA ] Ayuda. [CheckBox en fragmentDialog. isChecked en la actividad]


gonza28
07/04/16, 04:42:18
Hola.
necesito una mano con un método si alguien puede ayudarme.
Bueno, resulta que por razones de estetica y para no llenar mi pantalla principal, me decidí crear un dialogo personalizado en el cual puse un checkbox y un boton. por medio de SharedPreferences guardo los estados del checkbox.
Ahora bien, si en mi actividad principal trato de saber en que estado se encuentra el checckbox, no se puede porque da error.
Esto se debe porque el widget está en un layout inflado por el dialogo.
Yo quiero y necesito setear ese checkbox o llamarlo, o nombrarlo en mi actividad principal para poder saber su estado y así poner mis funcion.


Desde ya muchas gracias.
Un saludo.

kriogeN
07/04/16, 08:51:55
Hola.
necesito una mano con un método si alguien puede ayudarme.
Bueno, resulta que por razones de estetica y para no llenar mi pantalla principal, me decidí crear un dialogo personalizado en el cual puse un checkbox y un boton. por medio de SharedPreferences guardo los estados del checkbox.
Ahora bien, si en mi actividad principal trato de saber en que estado se encuentra el checckbox, no se puede porque da error.
Esto se debe porque el widget está en un layout inflado por el dialogo.
Yo quiero y necesito setear ese checkbox o llamarlo, o nombrarlo en mi actividad principal para poder saber su estado y así poner mis funcion.


Desde ya muchas gracias.
Un saludo.

Lo fácil, establecer un Boolean en la Activity y pasarla al construir el DialogFragment (con el correspondiente get y set en la Activity).

Para establecer el valor inicial al mostrar el DialogFragment: Haces el get.

En el onCheckedChanged del CheckBox: Haces el set.

gonza28
07/04/16, 14:18:03
Lo fácil, establecer un Boolean en la Activity y pasarla al construir el DialogFragment (con el correspondiente get y set en la Activity).

Para establecer el valor inicial al mostrar el DialogFragment: Haces el get.

En el onCheckedChanged del CheckBox: Haces el set.

mmmmmm. Mira mi dialogo.
necesito saber en la actividad principal si el checkbox está isChecked.
if (check.isChecked()) {
hago lo que necesito aquí
}
pero en la actividad, no en el dialogo.

Dialogo:

public class LoginDialog extends DialogFragment {
private static final String TAG = LoginDialog.class.getSimpleName();

CheckBox check;
private String CHECK = "1";
//private TextView textD;

public LoginDialog() {
}

override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.dialog_signin, container, false);

check = (CheckBox) view.findViewById(R.id.checkBoxJavy);

Button signup = (Button) view.findViewById(R.id.crear_boton);
//signup.setOnClickListener(this);

signup.setOnClickListener(
new View.OnClickListener() {
override
public void onClick(View v) {
savePreferences("CHECKBOX", check.isChecked());
if (check.isChecked()) {
dismiss();

}
}
}
);

//loadSavedPreferences();

}

return view;
}


private void loadSavedPreferences() {
SharedPreferences sp = PreferenceManager
.getDefaultSharedPreferences(getActivity());
boolean cbValue = sp.getBoolean("CHECKBOX", false);
if (cbValue) {
check.setChecked(true);
} else {
check.setChecked(false);
}


}



private void savePreferences(String key, boolean value) {
SharedPreferences sp = PreferenceManager
.getDefaultSharedPreferences(getActivity());
SharedPreferences.Editor edit = sp.edit();
edit.putBoolean(key, value);
edit.commit();
}
private void savePreferences(String key, String value) {
SharedPreferences sp = PreferenceManager
.getDefaultSharedPreferences(getActivity());
SharedPreferences.Editor edit = sp.edit();
edit.putString(key, value);
edit.commit();
}


}