Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.61/33: Рейтинг темы: голосов - 33, средняя оценка - 4.61
MyNameIsWinner
0 / 0 / 0
Регистрация: 25.11.2011
Сообщений: 2
1

Помогите передвинуть ImageView

28.11.2011, 18:00. Просмотров 5992. Ответов 3
Метки нет (Все метки)

В main.xml есть ImageView. Вот он:

XML
1
2
3
4
5
<ImageView
android:id="@+id/image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
Возникла задача программно его двигать. Т.е. менять позицию по x и y. Начал гуглить. И черт, начиная от ScrollBy и ScrollTo, и заканчивая какими-то абсолютно извращенскими методами на 15-20 строк кода - все НЕ РАБОТАЕТ!
Спецы! Возможно я что-то не так делаю?

Вот код создания ImageView:


Java
1
2
3
4
5
6
7
8
ImageView image = (ImageView) findViewById(R.id.image);
image.setBackgroundResource(R.anim.my_anim);
 
image.scrollTo (10,10);
 
/* Здесь я уже пошел создавать анимацию, так что этот момент можно опустить */
 
mAnim = (AnimationDrawable) image.getBackground();
Что я не так делаю? Возможно нужно двигать не image, а mAnim? Спецы помогите!

Заранее, спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.11.2011, 18:00
Ответы с готовыми решениями:

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

Передвинуть view, когда отображается клавиатура
Есть необходимость передвинуть поля для ввода выше, когда открывается...

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

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

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

3
MyNameIsWinner
0 / 0 / 0
Регистрация: 25.11.2011
Сообщений: 2
29.11.2011, 19:54 2
Проблему я решил, вот пример для тех, кто столкнется с теми же трудностями:

Main.xml (Обратите внимание, что здесь должен быть именно RelativeLayout):

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
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/RelativeLayout1"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >
 
    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_marginLeft="66dp"
        android:layout_marginTop="41dp"
        android:src="@drawable/ic_launcher" />
 
    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"
        android:layout_marginBottom="31dp"
        android:layout_marginRight="26dp"
        android:text="Button" />
 
</RelativeLayout>
Activity:

Java
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
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup.LayoutParams;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.RelativeLayout;
 
public class MoveImageViewActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        Button btn=(Button)findViewById(R.id.button1);
        btn.setOnClickListener(new OnClickListener(){
 
            public void onClick(View v) {
                ImageView img = (ImageView)findViewById(R.id.imageView1);
                RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams( 
                        RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); 
                     
                    layoutParams.setMargins(150, 150, 0, 0);
                img.setLayoutParams(layoutParams);
            }
            
        });
    }
}
Всем чмоке, кто найдет этот топик в гугле!

P.S. Огромное спасибо constv.
0
swoi2003
0 / 0 / 0
Регистрация: 22.06.2011
Сообщений: 16
13.05.2012, 21:47 3
Очень благодарен, наконецто нормальное решение проблемы !

Ура мой самолетик двигаеться !!!
0
Yushka
4 / 4 / 0
Регистрация: 24.07.2013
Сообщений: 80
01.08.2013, 14:55 4
И мне помогло=) Спасибо=)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.08.2013, 14:55

Координаты imageView
Доброго времени суток. Как программно установить координаты появления...

Анимация ImageView
Здравствуйте. Как реализовать анимацию Imageview таким образом,что бы при...

Квадратный ImageView
Как заставить ImageView всегда быть квадратным и при этом максимального размера...


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

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

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