2010-11-08 2 views
1

На самом деле заголовок вопроса не совсем прав, что я хочу в своей программе, так это то, что всякий раз, когда я запускаю свою программу, я беру ввод от пользователя через диалоговое окно ввода и сохраняю его в строке. Я сделал метод для этого и всякий раз, когда я хочу использовать эту строку в своей программе, я просто вызываю этот метод, но моя проблема в том, что всякий раз, когда я вызываю этот метод, он выводит диалоговое окно ввода, которое я не хочу. Я хочу, чтобы диалоговое окно ввода приходило один раз при запуске программы, а затем я мог использовать этот вход в моей программе. Пожалуйста, помогите мне. ThanksИспользование строки во всей программе в java?

ответ

2

Сделать диалог условным в зависимости от значения вашей строки.

public String myPreciousString = null; 

public String getInput() { 
    if(myPreciousString == null){ 
     //show dialog 
     myPreciousString = dialog.getText(); 
    } 
    return myPreciousString ; 
} 
2

Создайте переменную для хранения строки в вашей программе. Когда вам нужно получить строку, сначала проверьте переменную. Если он содержит значение, верните его и не запрашивайте пользователя. Если он не содержит значения, попросите пользователя и сохраните то, что они ввели в переменной, прежде чем возвращать его.

3

Добавить статическую логическую переменную в метод, в котором вы вызываете InputDialog. После вызова диалога в первый раз установите для значения boolean var значение true. А затем добавьте чек, который будет определять, показывать диалог или нет. Рассмотрим следующее псевдо;

static boolean isNotFirstRun; 

if (isNotFirstRun == false) { 
// Show InputDialog 

isNotFirstRun = true; 
} 

// Perform other operations. 

Надеюсь, у вас возникла эта идея.

+0

Я пробовал это, но моя цель не решена: (( ), потому что всякий раз, когда я вызываю метод, начальное значение всегда ложно и, следовательно, оно снова показывает диалог .. – Vipul

1

Напишите код, который может вывести состояние программы. Поэтому в первый раз это будет пустое состояние, которое вызовет диалог. Если он не пуст, он просто будет использовать значение состояния. Надеюсь это поможет.

Смежные вопросы