java文本视图未显示
嘿,我的问题是,文本视图的内容不会显示,无论我是否将其定义为可见。logcat中没有显示任何问题
我像JFrankie告诉我的那样使用了AsyncTask,但我的textview的值仍然没有显示出来。现在怎么了?现在我得到了一个logcat错误,即socket已关闭,这与此有关吗
以下是我的方法:
public void fetchUpdate(View view) {
AsyncTask<Void, Void, String> at= new Task();
at.execute();
try {
tv.setText(at.get());
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ExecutionException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
异步任务部分:
package com.example.s_crewclientprealpha;
import java.io.IOException;
import java.io.InputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.OptionalDataException;
import java.io.OutputStream;
import java.net.Socket;
import java.net.UnknownHostException;
import 安卓.os.AsyncTask;
import 安卓.widget.TextView;
public class Task extends AsyncTask<Void,Void,String>{
Socket serverside = null;
InputStream i=null;
OutputStream o=null;
Thread t=null;
Thread update=null;
Thread txtviewable=null;
String Restaurant=null;
String UserID=null;
String UserBestellung=null;
CharSequence text=null;
TextView tv=null;
ObjectOutputStream oos = null;
ObjectInputStream ois=null;
@Override
protected String doInBackground(Void... params) {
connecttoServer();
try {
oos.writeInt(1);
oos.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
Restaurant=(String) ois.readObject();
} catch (OptionalDataException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return Restaurant;
}
@Override
protected void onPostExecute(String result){
}
public void connecttoServer(){
try {
serverside=new Socket("veteran1.ez.lv",5544);//serverside ist der server
i= serverside.getInputStream();
o= serverside.getOutputStream();
oos = new ObjectOutputStream(o);
ois= new ObjectInputStream(i);
} catch (UnknownHostException e) {
e.printStackTrace();
// TODO Auto-generated catch block
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (NullPointerException e){
e.printStackTrace();
}
}
} XML部分:
<RelativeLayout xmlns:安卓="http://schemas.安卓.com/apk/res/安卓"
xmlns:tools="http://schemas.安卓.com/tools"
安卓:id="@+id/RelativeLayoutMain"
安卓:layout_width="match_parent"
安卓:layout_height="match_parent"
安卓:background="@drawable/holzbackground"
安卓:paddingBottom="@dimen/activity_vertical_margin"
安卓:paddingLeft="@dimen/activity_horizontal_margin"
安卓:paddingRight="@dimen/activity_horizontal_margin"
安卓:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity"
安卓:icon="@drawable/ic_launcher" >
<TextView
安卓:id="@+id/textViewHeadline"
安卓:layout_width="wrap_content"
安卓:layout_height="wrap_content"
安卓:layout_alignParentTop="true"
安卓:layout_centerHorizontal="true"
安卓:text="@string/txtdev"
安卓:visibility="visible" />
<EditText
安卓:id="@+id/UsersName"
安卓:layout_width="wrap_content"
安卓:layout_height="wrap_content"
安卓:layout_alignParentLeft="true"
安卓:layout_below="@+id/textViewHeadline"
安卓:ems="10"
安卓:inputType="textPersonName"
安卓:text="@string/usernamebsptxt" >
<requestFocus />
</EditText>
<TextView
安卓:id="@+id/textViewBottom"
安卓:layout_width="wrap_content"
安卓:layout_height="wrap_content"
安卓:layout_alignParentBottom="true"
安卓:layout_centerHorizontal="true"
安卓:layout_marginBottom="89dp"
安卓:text="@string/txtview2" />
<EditText
安卓:id="@+id/bestellungstext"
安卓:layout_width="wrap_content"
安卓:layout_height="wrap_content"
安卓:layout_alignParentLeft="true"
安卓:layout_below="@+id/UsersName"
安卓:layout_marginTop="18dp"
安卓:ems="10"
安卓:hint="@string/HinttxtOrder"
安卓:text="@string/HinttxtOrder" />
<Button
安卓:id="@+id/buttontest"
安卓:layout_width="wrap_content"
安卓:layout_height="wrap_content"
安卓:layout_alignParentRight="true"
安卓:layout_below="@+id/bestellungstext"
安卓:onClick="setOrder"
安卓:text="@string/sendorderbuttontxt" />
<Button
安卓:id="@+id/updatebutton"
style="?安卓:attr/buttonStyleSmall"
安卓:layout_width="wrap_content"
安卓:layout_height="wrap_content"
安卓:layout_alignLeft="@+id/buttontest"
安卓:layout_alignParentRight="true"
安卓:layout_below="@+id/buttontest"
安卓:text="@string/update"
安卓:onClick="fetchUpdate" />
<Button
安卓:id="@+id/buttontoadminconsole"
安卓:layout_width="wrap_content"
安卓:layout_height="wrap_content"
安卓:layout_alignParentBottom="true"
安卓:layout_alignParentRight="true"
安卓:text="@string/buttontxttoadminconsole"
安卓:onClick="toAdminConsole" />
Logcat:
11-19 20:07:17.482: W/System.err(11921): java.net.SocketException: Socket closed
11-19 20:07:17.482: W/System.err(11921): at libcore.io.Posix.recvfromBytes(Native Method)
11-19 20:07:17.482: W/System.err(11921): at libcore.io.Posix.recvfrom(Posix.java:140)
11-19 20:07:17.482: W/System.err(11921): at libcore.io.BlockGuardOs.recvfrom(BlockGuardOs.java:164)
11-19 20:07:17.482: W/System.err(11921): at libcore.io.IoBridge.recvfrom(IoBridge.java:506)
11-19 20:07:17.482: W/System.err(11921): at java.net.PlainSocketImpl.read(PlainSocketImpl.java:488)
11-19 20:07:17.482: W/System.err(11921): at java.net.PlainSocketImpl.access$000(PlainSocketImpl.java:46)
11-19 20:07:17.482: W/System.err(11921): at java.net.PlainSocketImpl$PlainSocketInputStream.read(PlainSocketImpl.java:240)
11-19 20:07:17.482: W/System.err(11921): at libcore.io.Streams.readSingleByte(Streams.java:41)
11-19 20:07:17.492: W/System.err(11921): at java.net.PlainSocketImpl$PlainSocketInputStream.read(PlainSocketImpl.java:236)
11-19 20:07:17.492: W/System.err(11921): at java.io.FilterInputStream.read(FilterInputStream.java:114)
11-19 20:07:17.492: W/System.err(11921): at java.io.ObjectInputStream.checkReadPrimitiveTypes(ObjectInputStream.java:405)
11-19 20:07:17.492: W/System.err(11921): at java.io.ObjectInputStream.readNonPrimitiveContent(ObjectInputStream.java:770)
11-19 20:07:17.492: W/System.err(11921): at java.io.ObjectInputStream.readObject(ObjectInputStream.java:2006)
11-19 20:07:17.492: W/System.err(11921): at java.io.ObjectInputStream.readObject(ObjectInputStream.java:1963)
11-19 20:07:17.492: W/System.err(11921): at com.example.s_crewclientprealpha.Task.doInBackground(Task.java:42)
11-19 20:07:17.492: W/System.err(11921): at com.example.s_crewclientprealpha.Task.doInBackground(Task.java:1)
11-19 20:07:17.492: W/System.err(11921): at 安卓.os.AsyncTask$2.call(AsyncTask.java:287)
11-19 20:07:17.492: W/System.err(11921): at java.util.concurrent.FutureTask.run(FutureTask.java:234)
11-19 20:07:17.492: W/System.err(11921): at 安卓.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
11-19 20:07:17.492: W/System.err(11921): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
11-19 20:07:17.492: W/System.err(11921): at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
11-19 20:07:17.492: W/System.err(11921): at java.lang.Thread.run(Thread.java:841)
共 (0) 个答案