>我在处理 Android 活动时遇到问题:我正在尝试为一个应用程序创建一个初始屏幕,该屏幕将在 3 秒内显示。
然而,我在代码的一部分中得到一个持久性错误,如下所示(错误):
"新 Runnable(){} 类型的方法 run() 必须覆盖或实现超类型方法"
这是部分:
final Runnable execution = new Runnable(){
@Override
public void run() {
Intent login = new Intent(ctx,LoginScreen.class);
startActivity(login);
finish();
}
};
其余代码:
package com.example.events;
import com.example.events.LoginScreen;
import android.os.Bundle;
import android.os.Handler;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.view.Menu;
public class Runnable extends Activity {
Context ctx;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_runnable);
ctx=this;
Threads();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.runnable, menu);
return true;
}
final Handler mHandler= new Handler();
public void Threads(){
Thread thread = new Thread() {
@Override
public void run() {
try {
Thread.sleep(3000);
}
catch (InterruptedException e) {
}
mHandler.post((java.lang.Runnable) execution);
}
};
thread.start();
}
final Runnable execution = new Runnable(){
@Override
public void run() {
Intent login = new Intent(ctx,LoginScreen.class);
startActivity(login);
finish();
}
};
}
我确实检查了我的项目属性,编译器设置为 1.6,但错误不会留下:我做错了什么吗?
非常感谢您的帮助。
毛罗。
您的Activity
名为Runnable
。因此,您的final Runnable execution = new Runnable()
正在尝试创建 com.example.events.Runnable
的实例,该实例没有run()
方法。
可能的类名数量几乎是无限的。请为您的Activity
子类选择一个不同的子类,一个不与Java或Android中常用的另一个类名冲突的子类名。例如,您可以选择Ddskwerioajsdlv
作为Activity
子类的名称,因为该名称似乎未被使用。