Отображение текста на экране с задержкой (Android Studio)Android

Форум для тех, кто программирует под Android
Ответить
Гость
 Отображение текста на экране с задержкой (Android Studio)

Сообщение Гость »


Привет всем. Недавно я начал разработку в Android Studio и столкнулся с проблемой. Я разрабатываю текстовый роман по аналогии с LifeLine. Суть в том, что текст истории отображается на экране с небольшой задержкой. Я хочу, чтобы геймплей был похож на общение в мессенджере. При полном отображении текста из массива на экране должно отображаться от 2 до 5 кнопок с выбором действия.

Теперь опишу проблему. Для отображения текста я использую компонент ListView. Если я добавлю в цикл задержку в 1 секунду, то текст будет отображаться не последовательно, а будет отображаться полностью. А хотелось бы, чтобы текст отображался последовательно с задержкой в ​​1 секунду. Я попробовал использовать обработчик, и это помогло. Однако когда я хочу отобразить кнопки после завершения цикла, это не работает, и кнопка отображается сразу. Я понимаю, почему это происходит.

Но у меня вопрос — можно ли отказаться от использования многопоточности? Как лучше всего реализовать мою идею?

Основной класс:

публичный класс GameMain расширяет AppCompatActivity { @SuppressLint («Миссингинфлатедид») @Override protected void onCreate (Bundle saveInstanceState) { super.onCreate(saveInstanceState); setContentView(R.layout.activity_game_main); ListView mainList = findViewById(R.id.list_of_text); //Новая игра newGame = новая новая игра(); окончательный адаптер ArrayAdapter = новый ArrayAdapter(this, android.R.layout.simple_list_item_1); Строка[] listText = { "Текст 1", «Текст2», «Текст3», }; mainList.setAdapter(адаптер); SetTextOnDisplay textOnDisplay = новый SetTextOnDisplay (); textOnDisplay.displayTextSequentially (listText, адаптер); Кнопка button1 = findViewById(R.id.button_main_1); button1.setVisibility(View.VISIBLE); } } Класс для отображения текста:
публичный класс SetTextOnDisplay расширяет поток { public void displayTextSequentially(final String[] listText, окончательный адаптер ArrayAdapter) { окончательный обработчик обработчика = новый обработчик(); интервал задержки = 500; for (int i = 0; i
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»