如何在Android studio中使用java将线程增量数据插入TextVew
我从我的控制台如何在Android studio中使用java将线程增量数据插入TextVew,java,android,Java,Android,我从我的控制台(from:System.out.println(a))得到结果,但是如果Textveiw(tv\u main activitybalance)中的设置值出现错误 如何在textView中设置值以及如何在线程更改时自动工作。因为要更改tv\u mainActivityBalance文本,您需要UI线程。 如果您能发布更多关于您的代码以及它应该做什么的信息,那么我们也许可以帮助您找到一个更优化的解决方案 然而,您的代码应该是这样的 Thread thread = new Thread
(from:System.out.println(a))
得到结果,但是如果Textveiw(tv\u main activitybalance)
中的设置值出现错误
如何在textView中设置值以及如何在线程更改时自动工作。因为要更改
tv\u mainActivityBalance
文本,您需要UI线程。
如果您能发布更多关于您的代码以及它应该做什么的信息,那么我们也许可以帮助您找到一个更优化的解决方案
然而,您的代码应该是这样的
Thread thread = new Thread() {
@Override
public void run() {
int a =1;
while (true) {
try {
sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
tv_mainActivityBalance.setText(String.valueOf(a));
System.out.println(a);
a++;
}
}
};
thread.start();
他们不需要获取tmp数据,因为内存问题,我们只需要使用一个变量来解决这个问题
Thread thread = new Thread(){
@Override
public void run() {
int a =1;
while (true){
try {
sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
final int tmp = a;
runOnUiThread(new Runnable() {
@Override
public void run() {
tv_mainActivityBalance.setText(String.valueOf(tmp));
}
});
System.out.println(a);
a++;
}
}
};
thread.start();
你正在编写的代码对我有用。并给出a的值,连续增加1 setText(““+a”);给你。它不工作,兄弟…..错误:只有创建视图层次结构的原始线程才能接触它的视图。为什么使用while循环。?用于无限计数
Thread thread = new Thread(){
@Override
public void run() {
int a =1;
while (true){
try {
sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
final int tmp = a;
runOnUiThread(new Runnable() {
@Override
public void run() {
tv_mainActivityBalance.setText(String.valueOf(tmp));
}
});
System.out.println(a);
a++;
}
}
};
thread.start();