У меня есть кнопка, которая имеет:
.setClickable(false);
и
.getBackground().setColorFilter(Color.GRAY, PorterDuff.Mode.MULTIPLY);
при инициализации.
Затем я жду сигнала GPS, и когда он будет найден, я устанавливаю для setClickable значение true, а для ColorFilter - значение null. Это работает, но не обновляет кнопку, если к экрану нигде не прикасаться.
Я уверен, что это не какая-то ошибка в цикле в коде GPS, потому что после нажатия этой кнопки другая становится кликабельной, а фильтр - нулевым, но происходит то же самое.
Кто-нибудь когда-либо испытывал это раньше? Бывает и в 2.2 и в 2.3
Вот пример из списка действий кнопки:
setgps1.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
if(!gps1set)
{
gps1set = true;
setgps1.setText("Reset");
latitude1.setText(latitude1.getText()+ " +/-"+gpsaccuracy+"m");
longitude1.setText(longitude1.getText()+ " +/-"+gpsaccuracy+"m");
altitude1.setText(altitude1.getText() + " +/-"+gpsaccuracy+"m");
latitude1.setTextColor(Color.GREEN);
longitude1.setTextColor(Color.GREEN);
altitude1.setTextColor(Color.GREEN);
save.setClickable(true);
save.getBackground().setColorFilter(null);
}
else
{
gps1set = false;
setgps1.setText("Set GPS 1");
latitude1.setText(""+lat1);
longitude1.setText(""+lon1);
altitude1.setText(""+alt);
latitude1.setTextColor(Color.WHITE);
longitude1.setTextColor(Color.WHITE);
altitude1.setTextColor(Color.WHITE);
save.setClickable(false);
save.getBackground().setColorFilter(Color.GRAY, PorterDuff.Mode.MULTIPLY);
}
}
});