Я хочу настроить текст с сервера, я получил ответ от сервера, когда я делаю отладку, но не устанавливаю settext.when я запускаю код, кажется, ничего не происходит, его не отображаются данные сервера в textview: вот мой Java класс:Не получать данные с сервера в textview в android?
public class PMAddPigeonActivity extends AppCompatActivity {
private static String url= "http://.........php";
TextView commission;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_pmadd_pigeon);
commission=(TextView)findViewById(R.id.comm) ;
getData();
}
private void getData() {
StringRequest stringRequest = new StringRequest(url, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
showJSON(response);
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(PMAddPigeonActivity.this,error.getMessage().toString(),Toast.LENGTH_LONG).show();
}
});
RequestQueue requestQueue = Volley.newRequestQueue(this);
requestQueue.add(stringRequest);
}
private void showJSON(String response){
try {
JSONObject jsonObject = new JSONObject(response);
JSONArray result = jsonObject.getJSONArray(Config.JSON_ARRAY);
JSONObject collegeData = result.getJSONObject(0);
String name1 = collegeData.getString("commission");
commission.setText(name1, TextView.BufferType.EDITABLE);
} catch (JSONException e) {
e.printStackTrace();
}
// commission.setText(""+name);
}
config.java
public class Config {
public static final String KEY_NAME = "commission";
public static final String JSON_ARRAY = "result";
}
мой JSON выход:
{
"id": 1,
"commission": 0.01
}
мой XML:
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceSmall"
android:id="@+id/comm"
android:textColor="#000"
android:layout_marginTop="70dp"
android:layout_alignTop="@+id/pedigreeupload"
android:layout_alignRight="@+id/dname"
android:layout_alignEnd="@+id/dname" />
Вы можете установить текст в текстовое окно только на тему пользовательского интерфейса. Вы уверены, что ваш 'onResponse' вызывается в потоке пользовательского интерфейса? –
попытайтесь сначала записать или опросить свой ответ, если это так, как ожидалось? или также отправьте ответ JSON. –
убедитесь, что 'collegeData.getString (« комиссия »)' возвращает нужный текст, который должен быть отображен – arjun