该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
想用蓝牙接收单片机的温度在Textview中实时显示,现在在Textview能显示,但不能实时更新,会在Textview中显示历史数据,有大神帮我看一下吗?
代码如下:
控件:
android:id="@+id/in"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/button2"
android:layout_below="@+id/Text0"
android:layout_marginTop="15dp"
android:gravity="center"
android:text="22"
android:textColor="#00BFFF"
android:textSize="20sp" />
代码段:
//接收数据线程
Thread ReadThread=new Thread(){
public void run(){
int num = 0;
byte[] buffer = new byte[24];
byte[] buffer_new = new byte[24];
int i = 0;
int n = 0;
bRun = true;
//接收线程
while(true){
try{
while(is.available()==0){
while(bRun == false){}
}
while(true){
num = is.read(buffer); //读入数据
n=0;
String s0 = new String(buffer,0,num);
fmsg+=s0; //保存收到数据
for(i=0;i
if((buffer[i] == 0x0d)&&(buffer[i+1]==0x0a)){
buffer_new[n] = 0x0a;
i++;
}else{
buffer_new[n] = buffer[i];
}
n++;
}
String s = new String(buffer_new,0,n);
smsg+=s; //写入接收缓存
//int b=Integer.parseInt(smsg);
//int c=b-20;
//k = String.valueOf(c);
if(is.available()==0)break; //短时间没有数据才跳出进行显示
}
//发送显示消息,进行显示刷新
if(smsg.equals("1234"))
text0.setText("123");
handler.sendMessage(handler.obtainMessage());
}catch(IOException e){
}
}
}
};
//消息处理队列
Handler handler= new Handler(){
public void handleMessage(Message msg){
super.handleMessage(msg);
dis.setText(smsg); //显示数据
//new Reminder(1);
}
};