Приложение сбоя перед новой функцией вызова в макете диалогаAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Приложение сбоя перед новой функцией вызова в макете диалога

Сообщение Anonymous »

As I understand it, the problem is in blocking the thread, but if I add a separate thread, the call is simply ignored, help me run it in a separate thread
private void showDialog(){
int random = ThreadLocalRandom.current().nextInt(0, 28);
String[] randomPhrase = getResources().getStringArray(R.array.random_phrase);
String[] randomPhraseErr = getResources().getStringArray(R.array.random_phrase_err);

Dialog dialogAI = new Dialog(this, R.style.DialogStyle);

dialogAI.setContentView(R.layout.custom_dialog_ai);
dialogAI.getWindow().setBackgroundDrawableResource(R.drawable.bg_cyrcle_window);

TypeWriterView typeWriterView = dialogAI.findViewById(R.id.typeWriter_openai);
AppCompatButton appCompatButton = dialogAI.findViewById(R.id.btn_generate);
SearchView searchView_ai = dialogAI.findViewById(R.id.searchView_ai);

typeWriterView.setCharacterDelay(30);
typeWriterView.animateText("ИИ:\n" + randomPhrase[random]);

appCompatButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String searchViewText = searchView_ai.getQuery().toString();

if (searchViewText.isEmpty()) {
int random_ = ThreadLocalRandom.current().nextInt(0, 10);

typeWriterView.animateText("ИИ:\n" + randomPhraseErr[random_]);
}
else
{
Request request = new Request.Builder().url(getURL).build();

clientOpenAI.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(@NonNull Call call, @NonNull IOException e) {
e.printStackTrace();
}

@Override
public void onResponse(@NonNull Call call, @NonNull Response response) throws IOException {
runOnUiThread(new Runnable() {
public void run() {
try {
typeWriterView.animateText("ИИ: " + response.body().string());
} catch (IOException e) {
throw new RuntimeException(e);
}
}
});
}
});
}
}
});

dialogAI.show();
}


Подробнее здесь: https://stackoverflow.com/questions/795 ... log-layout
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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