Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
metrolog
4 / 4 / 1
Регистрация: 18.11.2012
Сообщений: 101
#1

Изменение ImageView из отдельного потока - Программирование Android

29.04.2013, 10:14. Просмотров 809. Ответов 2
Метки нет (Все метки)

XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/t1t"
    android:orientation="vertical" >
 
    <com.example.games.Game
        android:id="@+id/game"
        android:layout_width="match_parent"
        android:layout_height="555dp" />
 
    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
 
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="51dp"
            android:layout_gravity="bottom" >
 
            <Button
                android:id="@+id/button1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@color/way1"
                android:text="пуск"
                android:textColor="#191970" />
 
            <Button
                android:id="@+id/menu"
                android:layout_width="50dp"
                android:layout_height="wrap_content"
                android:layout_marginLeft="10dp"
                android:background="@color/way1"
                android:text="меню"
                android:textColor="#191970" />
 
            <ImageView
                android:id="@+id/image3"
                android:layout_width="50dp"
                android:layout_height="50dp"
                android:layout_marginLeft="10dp"
                android:background="@drawable/sprites1" />
 
            <ImageView
                android:id="@+id/image2"
                android:layout_width="50dp"
                android:layout_height="50dp"
                android:layout_marginLeft="10dp"
                android:background="@drawable/sprites1" />
 
            <ImageView
                android:id="@+id/image1"
                android:layout_width="50dp"
                android:layout_height="50dp"
                android:layout_marginLeft="10dp"
                android:background="@drawable/sprites1" />
 
        </LinearLayout>
 
    </FrameLayout>
 
</LinearLayout>
нужно из потока SurfaceView при определенном событие сменить картинку на imageview.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 public void setImage(int a){
      switch(a){
      case 1:
          image1.setBackgroundResource(R.drawable.sprites2);
          break;
      case 2:
         image2.setBackgroundResource(R.drawable.sprites2);
          break;
      case 3:
          image3.setBackgroundResource(R.drawable.sprites2);
          break;
      }
      
  }
выполняю его в SurfaceView при событии. Выдает ошибки.

Как правильно обратиться к imageview из класса отрисовки?
заранее спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.04.2013, 10:14
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Изменение ImageView из отдельного потока (Программирование Android):

Программное изменение src в ImageView
Здравствуйте. Есть строка с названием рессурса (logo.png). Подскажите, как...

Программное изменение размеров ImageView
Для всех View задаю размер через .getLayoutParams().width = mywidth; Но для...

Скопировать картинку из одной ImageView в другую ImageView
В ImageView поставлена картинка методом setImageResource. По нажатию на неё,...

Изменение View, не из того потока, в котором оно создано
Использую библиотеку OpenCV. Активити реализует JavaCameraView из этой...

ImageView
Добрый день. Вы не подскажите, как передать изображение из одного ImageView в...

ImageView
Подскажите как правильно выводить картинку из URL Вроде нашел какой то пример...

2
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
29.04.2013, 11:51 #2
Менять UI можно только из UI потока.

Добавлено через 1 минуту
используйте Handler/runOnUiThread()/view.post().
0
metrolog
4 / 4 / 1
Регистрация: 18.11.2012
Сообщений: 101
29.04.2013, 12:12  [ТС] #3
так и сделал.
спасибо.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.04.2013, 12:12
Привет! Вот еще темы с решениями:

ImageView
Добрый день ! Делал проект с нуля, все как обычно, но при поиске id для...

Координаты ImageView
Всем привет, хочу попросить у вас помощи, проблема заключается в следующем: У...

Баг с imageView
Никто случайно не сталкивался с такой проблемой: использую TabHost(7 вкладок),...

Взаимодействие с ImageView
Господа подскажите как сделать так, чтобы пользователь мог взаимодействовать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru