【发布时间】:2015-08-18 07:48:19
【问题描述】:
当点击暂停按钮 pauseb 时我正在使用两个线程只显示暂停文本我需要暂停线程直到再次点击按钮
handler1=new Handler();
j=new Runnable(){
public void run() {
AbsoluteLayout.LayoutParams absParams =
(AbsoluteLayout.LayoutParams) b2.getLayoutParams();
DisplayMetrics displaymetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);
int width = displaymetrics.widthPixels;
int height = displaymetrics.heightPixels;
Random r = new Random();
absParams.x = r.nextInt(width);
absParams.y = r.nextInt(height);
b2.setLayoutParams(absParams);
Animation animation = AnimationUtils.loadAnimation(page2.this, R.anim.fade);
b2.startAnimation(animation);
handler1.postDelayed(j, 870);
}};
handler1.postDelayed(j, 50);
final Button pauseb = (Button) findViewById(R.id.pauseid);
pauseb.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (pause == false) {
pauseb.setText("Pause");
pause = true;
}
else{
pauseb.setText("Play");
pause = false;
}
}
});
handler = new Handler();
t = new Runnable() {
public void run() {
Intent d = new Intent(getApplicationContext(), Page3.class);
d.putExtra("count", count);
d.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(d);
}
};
handler.postDelayed(t, 8000);
}
当点击暂停按钮时线程正在工作 8 秒,它应该暂停整个活动直到恢复
【问题讨论】:
-
我没有看到与 UI 分开的线程。
-
处理程序和处理程序1
-
处理程序不是线程。此处可见的所有代码都在一个线程上运行:UI 线程。
标签: android multithreading android-activity