Comment masquer le clavier juste par un robinet à l'extérieur d'un edittext?

Je veux cacher le clavier en appuyant sur l'extérieur de edittext. C'est mon code xml:

<RelativeLayout
android:clickable="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:onClick="rl_main_onClick">
<RelativeLayout
  //Here there are some widgets including some edittext.
</RelativeLayout>

C'est mon code java (MainActivity):

public void rl_main_onClick(View view) {
    InputMethodManager imm = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
    imm.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
}

Mais je dois appuyez deux fois pour cacher le clavier. La première appuyez sur change juste "à côté" (pour la dernière edittext c'est "fait") pour entrer dans l'icône, puis le deuxième robinet cache le clavier.
C'est ce qui se passera par la première frappe:

Comment masquer le clavier juste par un robinet à l'extérieur d'un edittext?

Maintenant, j'ai deux questions:

1 - Comment puis-je résoudre ce problème et de cacher le clavier par un seul robinet?

2 - Est-il possible de le faire pour tous mes edittext (un code pour tous)?

Merci d'avance.

OriginalL'auteur Reyhaneh Sharifzadeh | 2016-11-06