我很难让一个简单的 Android 应用程序正常工作。我来自 C 语言,在 Java 方面的经验很少,我试图从一个简单的时钟应用程序开始,它会每秒更新一次显示。这是我的Java代码:
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String currentdatetime =
DateFormat.getDateTimeInstance().format(new Date());
final TextView textview = new TextView(this);
Handler handler = new Handler();
Runnable runnable = new Runnable() {
@Override
public void run() {
String currentdatetime =
DateFormat.getDateTimeInstance().format(new Date());
textview.setText(currentdatetime);
}
};
textview.setGravity(Gravity.CENTER);
textview.setTextSize(20);
textview.setText(currentdatetime);
setContentView(textview);
handler.postDelayed(runnable, 1000);
runnable.run();
}
我正在使用 Google 提供的 ADT 包在 Debian Linux 中运行它,并遵循 Eclipse 为解决这些问题提供的所有建议,但无济于事。该程序编译得很好,并且完全按照我的预期显示,只是它根本没有更新。我尽我所能搜索了谷歌,并遵循了许多不同的方法,但我没有成功。
我希望这个程序做的是,在创建时,将“currentdatetime”设置为当前日期和时间,将其粘贴在 TextView 中,然后将 TextView 更改为主视图。我希望它handler.postDelayed
每隔一千毫秒就会再次命中并再次执行此操作。显然,这不是正在发生的事情。
恐怕我完全迷失了。谁能指出我正确的方向?