【发布时间】:2013-08-20 11:53:04
【问题描述】:
我编写了一个秒表,但它适用于 java,但不适用于 Android。如果我按下按钮它什么也做不了。会不会是Eclipse安装错了?
package com.example.stoppuhr;
import java.text.SimpleDateFormat;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import android.app.Activity;
public class MainActivity extends Activity implements OnClickListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
long start;
long millis;
public void onClick(View v) {
Button start1 = (Button)findViewById(R.id.button1);
Button button2 = (Button)findViewById(R.id.button2);
TextView textView1 = (TextView)findViewById(R.id.textView1);
start1.setOnClickListener(this);
我认为这是问题所在。
if (v.getId() == start1.getId()){
textView1.setText("moldu");
start = System.currentTimeMillis();
while (true){
millis = System.currentTimeMillis()-start;
SimpleDateFormat sdfDate = new SimpleDateFormat("mm:ss.SSS");//dd/MM/yyyy
String ausgeben = sdfDate.format(millis);
textView1.setText(ausgeben);
try {
Thread.sleep(30);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}
感谢您的帮助
【问题讨论】:
-
你说的是什么意思,但它适用于java,但不适用于Android?
-
我用普通的 java 应用程序尝试了相同的代码,不同之处在于:System.out.println 和 textview.setText
-
你阻塞了 UI 线程!了解 Android 中的 UI 线程。
标签: java android while-loop textview