2017-01-17 4 views
0

У меня есть диалоговое окно предупреждения, которое отлично работает, но я подозреваю, что могу очистить свой код. Я использую stringBuilder, чтобы помочь собрать сообщение, в дополнение к использованию String.format, чтобы получить интервал, приятный для каждой строки. Это String.format, который удерживает меня от добавления, как обычно. Я бы предпочел не использовать четыре (4) объекта String для выполнения всего этого. Покажите мне более сжатое кодирование и будьте здоровы навсегда.Использование stringBuilder в сочетании с String.format

AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this); 
     builder.setCancelable(true); 
     builder.setTitle("Total Counts"); 

     StringBuilder stringBuilder = new StringBuilder(); 

     String one= String.format("%-10s %s", calCount1, "#1 count\n"); 
     String two= String.format("%-10s %s", calCount2, "#2 count\n"); 
     String three= String.format("%-10s %s", calCount3, "#3 count\n"); 
     String four= String.format("%-10s %s", calCount4, "#4 count\n"); 

     stringBuilder.append(one); 
     stringBuilder.append(two); 
     stringBuilder.append(three); 
     stringBuilder.append(four); 

     builder.setMessage(stringBuilder.toString()); 
     ... 

ответ

1

Возможно это.

AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this); 
    builder.setCancelable(true); 
    builder.setTitle("Total Counts"); 

    StringBuilder stringBuilder = new StringBuilder(); 

    stringBuilder.append(String.format("%-10s %s", calCount1, "#1 count\n")); 
    stringBuilder.append(String.format("%-10s %s", calCount2, "#2 count\n")); 
    stringBuilder.append(String.format("%-10s %s", calCount3, "#3 count\n")); 
    stringBuilder.append(String.format("%-10s %s", calCount4, "#4 count\n")); 

    builder.setMessage(stringBuilder.toString()); 
+0

Я не уверен, что вы что-то набираете, делая это. –

+0

Это сработало! Я никогда не пробовал это с круглыми скобками. Я чувствую себя немного глупо. Но эй, спасибо! – seekingStillness

0

Вы можете использовать форматирование заполнителей в строковых ресурсах. См. this page в разделе «Форматирование строк». Он должен работать со стандартными модификаторами форматирования, такими как вы.