У меня есть приложение для Android с различными графическими элементами (ImageViews). Некоторые ImageViews можно изменить, нажав их, и тогда они покажут другую графику. У меня есть две системы для этого, и моя проблема одинакова для обеих.
В первом случае я наложил два ImageView друг на друга, а затем я вызываю каждый из них и программно устанавливаю их видимость. Во втором случае я использую функцию "setImageResource" и переключаюсь между разными объектами рисования.
В обоих случаях у меня возникает проблема, заключающаяся в том, что приложение довольно часто «ломается» и на долю секунды показывает неправильный «другой» графический элемент для каждого элемента, который имеет графическую альтернативу. Он показывает неправильную графику в течение доли секунды, а затем возвращается к правильной графике.
Я не могу найти что-либо об этом в Интернете, кто-нибудь здесь, кто распознает эту проблему или имеет какие-либо подсказки относительно того, в чем может быть проблема?
соответствующий код:
public void setLight1(int bo) // changes a graphical element by drawable
{
ImageView vw = (ImageView) findViewById(R.id.light_1);
if (bo > 0)
vw.setImageResource(R.drawable.lampaljus);
else
vw.setImageResource(R.drawable.lampaslockn);
}
private void setStickMid(int stick) // changing between two layered imageViews
{
switch (stick)
{
case 1:
ImageView vw_1 = (ImageView) findViewById(R.id.stick_1_up);
vw_1.setVisibility(View.INVISIBLE);
ImageView vw_2 = (ImageView) findViewById(R.id.stick_1);
vw_2.setVisibility(View.VISIBLE);
break;
// the rest of the switch statement omitted, just more of the same