【发布时间】:2015-02-25 08:23:09
【问题描述】:
数据显示在 logcat 中,但不显示在文本视图中.. 我能做什么
这是我的日志
12-29 11:05:13.908:D/gralloc_goldfish(772):没有检测到 GPU 仿真的仿真器。 12-29 11:05:24.649: D/dalvikvm(772): GC_FOR_ALLOC 释放 195K,9% 释放 7439K/8135K,暂停 35ms,总共 38ms 12-29 11:05:26.458: D/dalvikvm(772): GC_CONCURRENT freed 229K, 10% free 7628K/8455K, paused 26ms+99ms,总共185ms 12-29 11:05:27.908: D/Create Response(772): {"message":"登录成功。","success":1} 12-29 11:05:28.598:I/Choreographer(772):跳过 52 帧!应用程序可能在其主线程上做了太多工作。 12-29 11:05:29.848: D/创建响应 (772): {"3":"jmi.mohsin@gmail.com","2":"myname","1":"msnmsn","0 ":"8527801400","mobile_number":"8527801400","hint":"myname","email_id":"jmi.mohsin@gmail.com","password":"msnmsn"} 12-29 11:05:29.848:I/JSON 解析(772):我的名字 12-29 11:05:29.878: W/System.err(772): android.view.ViewRootImpl$CalledFromWrongThreadException: 只有创建视图层次结构的原始线程才能接触其视图。 12-29 11:05:29.878: W/System.err(772): 在 android.view.ViewRootImpl.checkThread(ViewRootImpl.java:4609) 12-29 11:05:29.878: W/System.err(772): 在 android.view.ViewRootImpl.requestLayout(ViewRootImpl.java:835) 12-29 11:05:29.878: W/System.err(772): 在 android.view.View.requestLayout(View.java:15129) 12-29 11:05:29.878: W/System.err(772): 在 android.view.View.requestLayout(View.java:15129) 12-29 11:05:29.878: W/System.err(772): 在 android.view.View.requestLayout(View.java:15129) 12-29 11:05:29.888: W/System.err(772): 在 android.view.View.requestLayout(View.java:15129) 12-29 11:05:29.888: W/System.err(772): 在 android.view.View.requestLayout(View.java:15129) 12-29 11:05:29.888: W/System.err(772): 在 android.widget.TextView.checkForRelayout(TextView.java:6303) 12-29 11:05:29.888: W/System.err(772): 在 android.widget.TextView.setText(TextView.java:3547) 12-29 11:05:29.888: W/System.err(772): 在 android.widget.TextView.setText(TextView.java:3405) 12-29 11:05:29.888: W/System.err(772): 在 android.widget.TextView.setText(TextView.java:3380) 12-29 11:05:29.898: W/System.err(772): at com.example.phonebook.Welcome$loginAccess.doInBackground(Welcome.java:93) 12-29 11:05:29.898: W/System.err(772): at com.example.phonebook.Welcome$loginAccess.doInBackground(Welcome.java:1) 12-29 11:05:29.898: W/System.err(772): 在 android.os.AsyncTask$2.call(AsyncTask.java:287) 12-29 11:05:29.898: W/System.err(772): 在 java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305) 12-29 11:05:29.898: W/System.err(772): 在 java.util.concurrent.FutureTask.run(FutureTask.java:137) 12-29 11:05:29.898: W/System.err(772): 在 android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230) 12-29 11:05:29.908: W/System.err(772): 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076) 12-29 11:05:29.908: W/System.err(772): 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569) 12-29 11:05:29.908: W/System.err(772): 在 java.lang.Thread.run(Thread.java:856)这是我的欢迎活动
包 com.example.phonebook; 导入 java.util.ArrayList; 导入 java.util.List; 导入 org.apache.http.NameValuePair; 导入 org.apache.http.message.BasicNameValuePair; 导入 org.json.JSONObject; 导入android.app.Activity; 导入android.os.AsyncTask; 导入android.os.Bundle; 导入android.os.StrictMode; 导入android.util.Log; 导入 android.widget.TextView; 公共类欢迎扩展活动{ // 私有 ProgressDialog pDialog; TextView jsonParsed1,DataShow,hint_data; JSONParser jsonParser = new JSONParser(); JSONParser jobj = new JSONParser(); 私有静态字符串 url = "http://192.168.1.10/android_connect/login_setup/show_data.php"; //private static final String about = "about"; // 私有静态最终字符串 TAG_SUCCESS="success"; // 私有静态最终字符串hint="hint"; @覆盖 protected void onCreate(Bundle savedInstanceState) { StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder() .detectDiskReads().detectDiskWrites().detectNetwork() .penaltyLog().build()); super.onCreate(savedInstanceState); setContentView(R.layout.welcome); jsonParsed1=(TextView)findViewById(R.id.jsonParsed); DataShow=(TextView)findViewById(R.id.show_all_data); hint_data=(TextView)findViewById(R.id.hint_datafor_value); 字符串 abt = getIntent().getStringExtra("mobile_number"); //意图 i=getIntent(); //String abt=i.getStringExtra("mobile_number"); //System.out.println(abt); //jsonParsed1.setText(abt); 新的登录访问()。执行(); } 类 loginAccess 扩展 AsyncTask { TextView jsonParsed = (TextView) findViewById(R.id.jsonParsed); 私有字符串内容; 字符串输出数据 = ""; JSONObject jsonResponse; @覆盖 受保护的字符串doInBackground(字符串... arg0){ 字符串 abt = getIntent().getStringExtra("mobile_number"); 列表参数 = new ArrayList(); params.add(new BasicNameValuePair("mobile_number", abt)); JSONObject json = jsonParser.makeHttpRequest(url,"POST", params); 内容 = json.toString(); Log.d("创建响应", Content); /****************** 开始解析响应 JSON 数据 *************/ 尝试 { /****** 使用来自 JSON 字符串的名称/值映射创建一个新的 JSONObject。 ********/ jsonResponse = 新 JSONObject(内容); /******* 获取节点值 **********/ 字符串提示 = jsonResponse.optString("hint").toString(); OutputData += "节点:\n\n "+ 提示 +" "; Log.i("JSON 解析", 提示); /****************** 结束解析响应 JSON 数据 *************/ // jsonParsed.setText(OutputData); } 捕捉(异常 e){ e.printStackTrace(); } 返回空值; } 受保护的无效onPostExecute(无效未使用){ // //JSONObject jsonResponse = null; // // /******* 获取节点值 **********/ // 字符串提示 = jsonResponse.optString("hint").toString(); // // 输出数据 += "节点:\n\n "+ 提示 +" "; // // Log.i("JSON 解析", 提示); // // /****************** 结束解析响应 JSON 数据 *************/ // // hint_data.setText(OutputData); jsonParsed.setText(OutputData); } } }【问题讨论】: