【发布时间】:2017-01-26 06:53:28
【问题描述】:
我想从服务器设置文本数据,当我进行调试时我得到了服务器的响应,但它没有设置 settext。当我运行代码时似乎什么也没发生,它没有将服务器数据显示到 textview 中: 这是我的java类:
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" />
【问题讨论】:
-
您只能在 UI 线程上将文本设置为 textview。你确定你的
onResponse是在 UI 线程上调用的吗? -
先尝试记录或祝您回复,如果符合预期?或者也发布您的 JSON 响应。
-
确保
collegeData.getString("commission")返回要显示的正确文本 -
好的,我先试试吧
-
@junaid..我已经发布了我的 json 回复
标签: java android mysql textview