#android #timer
#Android #таймер
Вопрос:
Я получаю ошибки при доступе к объекту одного класса в другом. Ниже приведен мой код:
package FinalProj.com;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.os.CountDownTimer;
public class iFallApp extends Activity{
public Object textView1;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//TextView textview = new TextView(this);
//textview.setText("This is the iFall tab");
// setContentView()
setContentView(R.layout.ifallapp);
View textView1 = findViewById(R.id.textView1);
MyCount counter = new MyCount(5000,1000);
counter.start();
}
public class MyCount extends CountDownTimer{
public MyCount(long millisInFuture, long countDownInterval) {
super(millisInFuture, countDownInterval);
}
iFallApp app1 = new iFallApp();
@Override
public void onFinish() {
// TODO Auto-generated method stub
app1.textView1.setText("done");
}
@Override
public void onTick(long millisUntilFinished) {
// TODO Auto-generated method stub
}
}
}
Я пытаюсь получить доступ к textView1 класса iFallApp в классе Mycount. Однако он не выдает мне ошибку для textView1, но ошибка заключается в том, что метод «setText (string)» не определен для типа object.
Пожалуйста, предложите.
Ответ №1:
изменить
public Object textView1;
Для
public TextView textView1;
и изменить
View textView1 = findViewById(R.id.textView1);
Для
textView1=(TextView) findViewById(R.id.textView1);
Ответ №2:
У вас есть переменная экземпляра с именем textView1, определенная как объект в вашем классе iFallApp. Это то, к чему осуществляется доступ в вашей строке app1.textView1.setText («готово»)