在Android ADT中找不到getDateTimeInstance方法

时间:2013-09-25 14:55:21

标签: android datetime

我是Android开发的新手。现在我想通过textview控件在线程中显示当前系统时间。我得到一些例子,可以启动线程在textview控件中绘制文本。

但是当我通过下面的链接:Display the current time and date in an Android application试图获取系统当前时间时,我得到了错误,错误说:getDateTimeInstance()未定义类型DateFormat。 为什么这个答案对我不起作用? THX。

以下是供您参考的代码:

public class MainActivity extends Activity {
private TextView timeView;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    new Thread(){
        public void run(){
                System.out.println("Thread is running!!");
                timeView = (TextView)findViewById(R.id.textView1);

                String currentDateTimeString = DateFormat.getDateTimeInstance().format(new Date());
                timeView.setText("I am Fired via Non-UI thread:"+s);
        }
    }.start();
}

1 个答案:

答案 0 :(得分:2)

在线程中更新ui

 timeView.setText("I am Fired via Non-UI thread:"+s);

使用runOnUiThread。内线程的运行方法

    runOnUiThread(new Runnable() {

                    @Override
                    public void run() {
                       timeView.setText("I am Fired via Non-UI thread:"+s);
                    }
                });

还在线程外部初始化textview

     timeView = (TextView)findViewById(R.id.textView1)

同时检查此

http://developer.android.com/reference/java/text/DateFormat.html

检查您的导入声明。

import java.text.DateFormat // import this

而不是

import android.text.format.DateFormat;