I'm trying to get an ImageView to animate between 2 images in my drawable folder.
I thought everything would work fine, but the log is showing an error: Only the original thread that created a view hierarchy can touch its views.
Heres my code:
public class ExerciseActivity extends Activity {
    private ExercisesDataSource datasource;
    private Cursor cursor;
    private ImageView image_1_view;
    private Timer _timer;
    private int _index;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_exercise);     
        datasource = new ExercisesDataSource(this);
        datasource.open();
        cursor = datasource.fetchExercise(exerciseDataID);
        image_1_view = (ImageView) findViewById(R.id.exercise_image);
        _index = 1;
        _timer = new Timer();
        _timer.schedule(new TickClass(), 1000);
    }
    public class TickClass extends TimerTask
    {
        private int columnIndex;
        @Override
        public void run() {
            if (_index == 1) {
                columnIndex = cursor.getColumnIndex(MySQLiteHelper.COLUMN_IMAGE_1);
                _index = 2;
            }
            else {
                columnIndex = cursor.getColumnIndex(MySQLiteHelper.COLUMN_IMAGE_2);
                _index = 1; 
            }   
            String image_1 = cursor.getString(columnIndex);
            image_1 = image_1.replace(".png", "");
            int resourceId = getResources().getIdentifier(getPackageName() + ":drawable/" + image_1, null, null);
            image_1_view.setImageDrawable(getResources().getDrawable(resourceId));
        }
    }
}
I went ahead and set the classes and functions to public but that did not fix it.
All of the resources and everything are fine, how do I fix this error?