这是我的代码,我试图让多个图像在屏幕上滑动。 “TimerTask thisTimerTask = new ThisClass();”中的“ThisClass”线。我很欣赏背部提供为什么我在尝试引用某个类时遇到“无法解析为类型”错误 - Android
package your.package2.namespace2;
import java.util.Timer;
import java.util.TimerTask;
import android.app.Activity;
import android.os.Bundle;
import android.view.Display;
import android.widget.Button;
import android.widget.ImageView;
@SuppressWarnings("unused")
public class ChangeuppicksActivity extends Activity {
Display thisDisplay;
ImageView img, img4, img5, img7;
Timer timer;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
thisDisplay = getWindowManager().getDefaultDisplay();
TimerTask thisTimerTask = new ThisClass();
timer = new Timer();
timer.scheduleAtFixedRate(thisTimerTask, 1000, 16);
img = (ImageView) findViewById(R.id.pic1);
img4 = (ImageView) findViewById(R.id.pic4);
img5 = (ImageView) findViewById(R.id.pic5);
img7 = (ImageView) findViewById(R.id.pic7);
}
public void doSomething() {
int slideToPOS_X = (img.getLeft() - 7);
if (slideToPOS_X <= -img.getWidth()) {
int slideToPOS_X2 = (img4.getLeft() - 5);
if (slideToPOS_X2 <= -img4.getWidth()) {
slideToPOS_X2 = thisDisplay.getWidth();
}
img.layout(slideToPOS_X, 0, (slideToPOS_X + img.getWidth()), (0 + img.getHeight()));;
img4.layout(slideToPOS_X2, 0, (slideToPOS_X2 + img4.getWidth()), (0 + img4.getHeight()));
}
class ThisClass extends TimerTask {
@Override
public void run() {
ChangeuppicksActivity.this.runOnUiThread(new Runnable() {
public void run() {
doSomething();
}
});
}
}
}
}
你能提供一些有关ThisClass的信息吗?它是TimerTask的子类? – 2012-02-21 21:31:22
试着让你的'ThisClass' _public_。 – 2012-02-21 21:36:26
据我所知,子类必须是静态的,所以尝试公共静态类ThisClass ...但我不完全确定这是否会解决问题。 – m1ntf4n 2012-02-21 21:40:52