Temat: Problem z migotaniem ImageView
Staram się zrobić prosty program na andka i za pomocą kontrolki ImageView wyświetlać bitmapy które dynamicznie zmieniam. Obrazki się wyświetlają, i to dość szybko ale i równie szybko znikają... Proszę o pomoc, próbowałem już chyba wszystkiego, wątków, timera, i teraz kodu poniżej, ale efekt taki sam - migoczący obraz.
private final Runnable UpdateImg = new Runnable()
{
public void run()
{
Update();
HandlerUpdate.post(UpdateImg);
}
};
private void Update()
{
byte[] buffer = NextFrame.Get(); //Tworzy obrazek
ImgViewMain.setImageBitmap(BitmapFactory.decodeByteArray(buffer, 0, buffer.length)); //Wyświetla
}
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//[ ... Inicjalizacje itp ...]
HandlerUpdate.post(UpdateImg);
}
EDIT:
Innymi słowy po zakończeniu się HandlerUpdate.post(UpdateImg);
Obrazek znika, niezaleznie, czy metodę Update ustawię w timerze, czy wątku.
Jednak jeśli wywołam ją samodzielnie tak jak poniżej, to obrazek się pojawi i już zostanie.
Mateusz Grzelak edytował(a) ten post dnia 24.08.11 o godzinie 18:46
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//[ ... Inicjalizacje itp ...]
Update();
}