Вы также можете локализовать свои рисованные объекты.
Вы можете сделать это, создав папку для указанного c языка, так же, как вы бы локализовали строковые ресурсы.
Пример отрисовки для локали по умолчанию:
res/drawable-hdpi/country_flag.png
Пример отрисовки для другой локали (es_ES)
res/drawable-es-rES-hdpi/country_flag.png
Для получения дополнительной информации, пожалуйста, ознакомьтесь с официальной документацией: https://developer.android.com/training/basics/supporting-devices/languages
По второму вопросу; ваши классы также должны использовать строковые ресурсы, не используйте жестко закодированные строки.
Пример того, как это сделать:
В этом случае файл строковых ресурсов будет содержать:
<string name="title_comment">Comment</string>
<string name="button_ok">OK</string>
<string name="button_cancel">Cancel</string>
Код для вашего AlertDialog будет выглядеть следующим образом:
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle(R.string.title_comment);
final EditText input = new EditText(this);
input.setInputType( InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_NORMAL);
input.setSingleLine(false);
input.setLines(3);
input.setText(comment_Text);
builder.setView(input);
builder.setPositiveButton(R.string.button_ok, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
comment_Text = input.getText().toString();
}
});
builder.setNegativeButton(R.string.button_cancel, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
builder.show();