Это потому, что ваш public String get()
метод класса Client
возвращает prova
до того, как onSuccess()
установит ему значение.
Это нормально, потому что это асинхронный вызов.
В вашем случае вам нужно создать интерфейс для обработки асинхронного вызова в вашем методе public String get()
, например:
public class Client {
// This interface will be used in your get() method, and implement in your first snippet
public interface MyClientCallback {
public void onResponse(String value);
}
// Add your interface as param
public void get(MyClientCallback callback) {
```
// prova = response.toString();
callback.onReponse(response.toString());
```
}
}
Тогда вы можете назвать это так:
TextView textView = (TextView) findViewById(R.id.textView);
c.get(new MyClientCallback() {
@Override
public void onResponse(String value) {
textView.setText(value);
}
});
Надеюсь, это поможет вам.