Der Timer überprüfen jede Minute, wenn es eine Änderung der Stunde, wenn es dann eine Schaltfläche muss grün und anklickbar sein, sonst bleibt es rot und nicht anklickbar.Android App Absturz beim Aufruf eines Timers
Bisher erhalte ich diesen Fehler, und ich weiß nicht, wie das zu handhaben: -
android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
Timer timer = new Timer();
timer.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
CHECK();
}
}, 1*60*1000, 1*60*1000);
public void CHECK(){
sqliteDbHelper_ = new Sqlite_DBHelper(getActivity());
sqLiteDatabase = sqliteDbHelper_.getWritableDatabase();
String[] columns = {"hour_only","JAKOST"};
cursor = sqLiteDatabase.query("podatki", columns,null,null,null,null,null);
Calendar calander = Calendar.getInstance();
Integer currentHour = calander.get(Calendar.HOUR_OF_DAY);
buttonSaveOnMainPage.setClickable(true);
cursor.moveToLast();
if (cursor.moveToLast()== false){
lastInputedHour = 0;
}
else{
lastInputedHour = cursor.getInt(0);
}
Log.e(TAG+"zadnja vnesena URA",""+lastInputedHour);
Log.e(TAG+"trenutna URA",""+currentHour);
if (lastInputedHour == currentHour){
buttonSaveOnMainPage.setBackgroundResource(R.color.ColorRed);
buttonSaveOnMainPage.setClickable(false);
}
else
buttonSaveOnMainPage.setBackgroundResource(R.color.ColorGreenDark);
buttonSaveOnMainPage.setClickable(true);
}
Lesen Sie diese Antwort: https://stackoverflow.com/questions/5161951/android-only-the-original-thread-that-created-a-view-hierarchy-can-touch -Its-VI – Stanojkovic