Dúvidas sobre context

Estou iniciando meu aprendizado com o Android Studio.
Criei uma classe java chamada Tools.java para a utilização em várias activitys.
Meu problema esta na forma que uma função desta classe lida com os argumentos.
Preciso aprender a maneira correta de lidar com isso.
context.fieldName.requestFocus();
Agradeço todo tipo de ajuda.

//Chamada da função dentro da actviy -> CadastroActvity.java funciona sem problemas
 Tools.NewAlert(context, getString(R.string.nome_valido), "editTextName");
//Classe Tools.java
package br.com.easycad.projetoum;

import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.widget.Toast;

public class Tools {
    static void NewAlert(final Context context, String message, final String fieldName) {
        /*
	 Argumentos recebidos
	 context   -> br.com.easycad.projetoum.CadastroActivity@6ac4dbf
	 fieldName -> "editTextName
     */
		// o arqumento context funciona corretamente na construcao do AlertDialog
		AlertDialog.Builder builder = new AlertDialog.Builder(context, R.style.AppCompatAlertDialog);
        builder.setMessage(message);
        builder.setCancelable(false);
        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int which) {
                dialog.dismiss(); //encerra o dialog
                Toast.makeText(context, "Os valores são: = " + context  + " e " + fieldName, Toast.LENGTH_SHORT).show();
                // este toast mostra corretamente o valor dos argumentos recebibos  		
				//esta linha apresenta o erro -> Cannot resolve symbol 'fieldName' 
				context.fieldName.requestFocus();
            }
        });
        builder.show();
    }
}

Muito obrigado

https://developer.android.com/reference/android/view/View

Obrigado pela ajuda, orochimaru

Eu já pesquisei este tópico.
Meu problema é como utilizar o requestFocus em uma classe diferente da activity do controle.
Eu comentei no código acima onde e eu mostro como e onde o problema acontece.
Eu preciso passar o nome da activity e o nome do editText como argumentos.
Não encontrei referência a isto no link que você enviou, mas agreço sua intenção.

Tools.NewAlert(context, getString(R.string.nome_valido), "editTextName");

Entendi.

só que como vc fez o FieldName não é um EditText, é uma String.

o correto seria:

....final EditText fieldName){...}

Não tem como você passar o foco pra um para uma String.

Agora de acordo com o erro:

Cannot resolve symbol 'fieldName' 

Você está passando o context.fieldName. o seu Context não está apontando pra Activity nenhum, MESMO você passando como parâmetro, ali na instancia, ele é um Context qualquer.

É totalmente diferente vc fazer isso:

MainActivity context

Entendeu? Esse context vem de uma Activity com seus campos e etc…

Fora que isso também não se faz necessário se vc já passou o EditText como parametro, então o correto seria:

public static void NewAlert(final Context context, String message, final EditText campo) {
    AlertDialog.Builder builder = new AlertDialog.Builder(context, R.style.Widget_AppCompat_ActionBar_Solid);
    builder.setMessage(message);
    builder.setCancelable(false);
    builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int which) {
            dialog.dismiss(); //encerra o dialog
            Toast.makeText(context, "Os valores são: = " + context + " e " + campo.getText().toString(), Toast.LENGTH_SHORT).show();
            campo.requestFocus();
        }
    });
    builder.show();
}

pra chamar:

 NewAlert(this, "Alguma coisa......", nomeDoSeuCampo);

Caso vc queira usar o campo da sua context, vc tira esse EditText campo e troca o nome do seu Context pra o nome da Activity que vc quer.

Aí ficaria:

public static void NewAlert(final MainActivity context, String message) {
    AlertDialog.Builder builder = new AlertDialog.Builder(context, R.style.Widget_AppCompat_ActionBar_Solid);
    builder.setMessage(message);
    builder.setCancelable(false);
    builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int which) {
            dialog.dismiss(); //encerra o dialog
            Toast.makeText(context, "Os valores são: = " + context + " e " + context.campo.getText().toString(), Toast.LENGTH_SHORT).show();
            context.campo.requestFocus();
        }
    });
    builder.show();
}

Aí vc chamaria assim:

NewAlert(this, "Alguma coisa......");

Conseguiu entender a ideia??

Caro orochimaru,
Sua resposta foi clara e me ajudou muito.

Eu usei a sugestão abaixo:

public static void NewAlert(final Context context, String message, final EditText fieldName) {
    AlertDialog.Builder builder = new AlertDialog.Builder(context, R.style.Widget_AppCompat_ActionBar_Solid);
    builder.setMessage(message);
    builder.setCancelable(false);
    builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int which) {
            dialog.dismiss(); //encerra o dialog
            fieldName.requestFocus();
        }
    });
    builder.show();
}

A chamada ficou assim:

 Tools.Alert(context, getString(R.string.nome_valido), editTextName);

A função esta respondendo bem em todas as Actvitys que eu testei.
Agradeço muito pela sua atenção.