Mostrando tostadas de una clase que no es de actividad. Ploblem configurando el contexto para el brindis [duplicado]

Esta pregunta ya tiene respuestas aquí :
Respuesta 1

Defina su método para que tome un Contextargumento y se lo pase Activity.

en YourOtherClass

public class YourOtherClass {

    public void showToast(Context context, String message){
        Toast.makeText(context, message, Toast.LENGTH_SHORT).show();
    }
}

o si desea tomar un Contexto en su constructor y usar showToastsolo en YourOtherClass:

public class YourOtherClass {

    private Context context;

    public YourOtherClass(Context context){
        this.context = context;
    }

    private void showToast(String message){
        Toast.makeText(context, message, Toast.LENGTH_SHORT).show();
    }
}

en MainActivity

new YourOtherClass().showToast(this, message);

o si tiene una Contextvariable miembro de YourOtherClassy desea pasar el Contexten el constructor de YourOtherClass, haría

new YourOtherClass(this).showToast(message);
// showToast doesn't have to take a Context as argument, it could just take one as constructor parameter and hold that. 
// But then you have to make sure YourOtherClass is not used anymore if the Activity is closed.

Y para los errores que obtuvo en el código que proporcionó:

Context context = com.example.ex3.MainActivity;

Esto falla porque está intentando asignar un tipo a una instancia.

MainActivity.errorWarn("here");

Esto falla porque está llamando a un método no estático (el método no tiene un modificador estático en su firma) como si fuera estático. Eche un vistazo a esta pregunta para obtener más detalles sobre los métodos estáticos frente a los no estáticos.

Sin saber qué YourOtherClasshace o cómo su ciclo de vida está vinculado a la Actividad, es difícil de decir, pero tener que tocar la interfaz de usuario de una clase que no está relacionada con la interfaz de usuario y no tiene ninguna referencia a Contextsu uso, eso se siente extraño. Probablemente, lo que necesita es tomar un Contextargumento del constructor de YourOtherClass, pero tenga cuidado con las fugas Contexty el Activityciclo de vida.

Respuesta: 2

Construí un applet Java simple que funciona perfectamente a nivel local. Cuando subo mi sitio web a Azure (como un servicio en la nube), muestra un cuadro gris. Probé Win XP, Win 7, JRE 6, JRE 7 y diferentes navegadores. ...

De los ejemplos que he leído y de la documentación en MysqlConnectionPoolDataSource en http: //www.control.auc.dk/~04gr733/filer/javadoc-DB-driver/com/mysql/jdbc/jdbc2/optional / ...

Tengo una pila de preguntas muy básica <Integer> s = new Stack <integer> (); s.push (Nuevo entero (1)); s.push (Nuevo entero (2)); s.push (Nuevo entero (3)); for (int i = 0; i <s.size (); i ++) {...

¿Cómo se puede configurar Seam para usar diferentes restricciones de seguridad para diferentes colecciones de recursos web? En web.xml incluí secciones como <security-constraint> <web-resource -...