Estoy empezando con threads en Android, y cada vez que intento llamar a un método del Thread desde ApplicationMain, el IDE se queja y me lanza error de
Cannot resolve symbol... (y el nombre de cualquier método del thread)
Os pongo el código lo más simplificado posible, a ver si es que me he equivocado anidando clases o métodos, o qué hago mal.
Código:
En este caso el fallo me lo dapackage com.example.bla.blabla; import android.app.Activity; public class MainActivity extends Activity { //variables aquí private static Button StartStop; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } //Objeto Runnable Runnable runnable = new Runnable() { private Object mPauseLock; private boolean mPaused; private boolean mFinished; Thread t; public void updateValue() { mPauseLock = new Object(); mPaused = false; mFinished = false; } public void run() { while (!mFinished) { //hago cosas } public void onPause() { synchronized (mPauseLock) { mPaused = true; } } public void onResume() { synchronized (mPauseLock) { mPaused = false; mPauseLock.notifyAll(); } } }; //Thread Thread mythread = new Thread(runnable); mythread.start(); @Override public boolean onCreateOptionsMenu(Menu menu) { // lo típico } @Override public boolean onOptionsItemSelected(MenuItem item) { // lo típico } private class AddNewRecord extends AsyncTask<String, Void, Void> { //más cosas } }
Código:
cannot resolve symbol 'start'. Si intento llamar a cualquier otro método, el resultado es el mismo.mythread.start();
¿Alguien ve qué pasa?
Gracias!