Урок 20. Анимация
Урок 20. Анимация
Последний раз редактировалось damager82 28 апр 2017, 10:56, всего редактировалось 8 раз.
-
- Сообщения: 2
- Зарегистрирован: 24 мар 2012, 15:18
Re: Урок 20. Анимация
Укажите пожалуйста полный код с import android.
Re: Урок 20. Анимация
Сюда пока скину
Код: Выделить всё
import android.app.Activity;
import android.os.Bundle;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.MenuItem;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.TextView;
-
- Сообщения: 2
- Зарегистрирован: 24 мар 2012, 15:18
Re: Урок 20. Анимация
Спасибо большое!
Re: Урок 20. Анимация
создал проект, android 2.2, api level 8
скопировал пример, при билде проекта ошибки:
Description Resource Path Location Type
main cannot be resolved or is not a field Test20Activity.java /test20/src/com/test20 line 28 Java Problem
myalpha cannot be resolved or is not a field Test20Activity.java /test20/src/com/test20 line 60 Java Problem
mycombo cannot be resolved or is not a field Test20Activity.java /test20/src/com/test20 line 77 Java Problem
myrotate cannot be resolved or is not a field Test20Activity.java /test20/src/com/test20 line 73 Java Problem
myscale cannot be resolved or is not a field Test20Activity.java /test20/src/com/test20 line 65 Java Problem
mytrans cannot be resolved or is not a field Test20Activity.java /test20/src/com/test20 line 69 Java Problem
Почему не получается разрешить имена ресурсов?
скопировал пример, при билде проекта ошибки:
Description Resource Path Location Type
main cannot be resolved or is not a field Test20Activity.java /test20/src/com/test20 line 28 Java Problem
myalpha cannot be resolved or is not a field Test20Activity.java /test20/src/com/test20 line 60 Java Problem
mycombo cannot be resolved or is not a field Test20Activity.java /test20/src/com/test20 line 77 Java Problem
myrotate cannot be resolved or is not a field Test20Activity.java /test20/src/com/test20 line 73 Java Problem
myscale cannot be resolved or is not a field Test20Activity.java /test20/src/com/test20 line 65 Java Problem
mytrans cannot be resolved or is not a field Test20Activity.java /test20/src/com/test20 line 69 Java Problem
Почему не получается разрешить имена ресурсов?
Re: Урок 20. Анимация
Проблема была в import android.R;ilya писал(а):создал проект, android 2.2, api level 8
скопировал пример, при билде проекта ошибки:
Description Resource Path Location Type
main cannot be resolved or is not a field Test20Activity.java /test20/src/com/test20 line 28 Java Problem
myalpha cannot be resolved or is not a field Test20Activity.java /test20/src/com/test20 line 60 Java Problem
mycombo cannot be resolved or is not a field Test20Activity.java /test20/src/com/test20 line 77 Java Problem
myrotate cannot be resolved or is not a field Test20Activity.java /test20/src/com/test20 line 73 Java Problem
myscale cannot be resolved or is not a field Test20Activity.java /test20/src/com/test20 line 65 Java Problem
mytrans cannot be resolved or is not a field Test20Activity.java /test20/src/com/test20 line 69 Java Problem
Почему не получается разрешить имена ресурсов?
Видимо он добавляется при ctrl+shift+o
Re: Урок 20. Анимация
сделал вот так вот
у меня два раза выполняется вращение, т.е. из фукции следует прямой вызов, можно запустить плясать все элементы в пляску одновременно
стал копать, нашёл интересный атрибут android:ordering="sequentially" делал как в хелпах - неработает
вообщем я сделал так
задержку поставил 2600, чтобы убрать лаг в переключении анимации
а вот android:repeatCount="2" надо убирать, а то работает так
первый сет, второй сет, задержка, второй сет.
Код: Выделить всё
anim = AnimationUtils.loadAnimation(this, R.anim.mycombo);
tvHour.startAnimation(anim);
anim = AnimationUtils.loadAnimation(this, R.anim.myrotate);
tvHour.startAnimation(anim);
стал копать, нашёл интересный атрибут android:ordering="sequentially" делал как в хелпах - неработает
вообщем я сделал так
Код: Выделить всё
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
>
<set>
<rotate
android:fromDegrees="0"
android:toDegrees="360"
android:duration="3000"
android:pivotX="50%"
android:pivotY="50%">
</rotate>
<scale
android:fromXScale="0.1"
android:toXScale="1.0"
android:fromYScale="0.1"
android:toYScale="1.0"
android:pivotX="50%"
android:pivotY="50%"
android:duration="3000">
</scale>
</set>
<rotate
android:startOffset="2600"
android:fromDegrees="0"
android:toDegrees="360"
android:duration="6000"
android:repeatCount="2"
android:pivotX="50%"
android:pivotY="50%"
>
</rotate>
</set>
а вот android:repeatCount="2" надо убирать, а то работает так
первый сет, второй сет, задержка, второй сет.
Re: Урок 20. Анимация
xmlns:android="http://schemas.android.com/apk/res/android" Скажите, пожалуйста, для чего нужна эта строка?
Re: Урок 20. Анимация
Это пространство имен. Так просто и не объяснить ...daiz123 писал(а):xmlns:android="http://schemas.android.com/apk/res/android" Скажите, пожалуйста, для чего нужна эта строка?
Попробуйте тут глянуть http://www.vbnet.ru/articles/showarticle.aspx?id=146
Re: Урок 20. Анимация
Почему-то приложение крашется на реальном девайсе при выборе из контекстменю :О
Re: Урок 20. Анимация
В общем-то в этом месте урока
Можно было в кейсах указать только anim = ..., а tv.startAnimation(anim) указать после свитча.
Ну так, для сокращения кода.
Код: Выделить всё
case MENU_SCALE_ID:
anim = AnimationUtils.loadAnimation(this, R.anim.myscale);
tv.startAnimation(anim);
break;
case MENU_TRANSLATE_ID:
anim = AnimationUtils.loadAnimation(this, R.anim.mytrans);
tv.startAnimation(anim);
break;
case MENU_ROTATE_ID:
anim = AnimationUtils.loadAnimation(this, R.anim.myrotate);
tv.startAnimation(anim);
break;
Ну так, для сокращения кода.
Re: Урок 20. Анимация
Вообще даpaththeir писал(а):Можно было в кейсах указать только anim = ..., а tv.startAnimation(anim) указать после свитча.
Ну так, для сокращения кода.
Сам не знаю, зачем в каждый кейс это втыкнул ...
Re: Урок 20. Анимация
Товарищи!!! нужна ваша помощь, не могу найти ответ. Уже 2 дня в google сижу.
Есть анимация, в ней увеличение и перемищение объекта, при запуске она сризаеться по всем бокам, потому что ее родитель чуть больше по размерам.
Как можно избежать этого, как чтоб анимация не обращала не на что внимание?
Есть анимация, в ней увеличение и перемищение объекта, при запуске она сризаеться по всем бокам, потому что ее родитель чуть больше по размерам.
Как можно избежать этого, как чтоб анимация не обращала не на что внимание?
Код: Выделить всё
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationSet;
import android.view.animation.ScaleAnimation;
import android.view.animation.TranslateAnimation;
import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.LinearLayout;
public class Animation2Activity extends Activity {
LinearLayout layout_left_animation, layout_main_animation, mainView;
Animation animationIconsGroup, animationIcons, animationMain;
ImageView imageView1, imageChips, image_contact;
FrameLayout image_parent;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main1);
imageChips = (ImageView) findViewById(R.id.imageChips);
}
public void buttonClick1(View v) {
Animation anim3 = new ScaleAnimation(1, 4, 1, 4, 50, 50);
anim3.setDuration(1000);
TranslateAnimation anim4 = new TranslateAnimation(0, 200, 0, 200);
anim4.setDuration(1000);
AnimationSet anim = new AnimationSet(false);
anim.addAnimation(anim3);
anim.addAnimation(anim4);
imageChips.startAnimation(anim);
}
}
Код: Выделить всё
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/mainView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="buttonClick1"
android:text="Button1" android:layout_gravity="center_horizontal"/>
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent" >
<FrameLayout
android:id="@+id/image_parent"
android:layout_width="150dp"
android:layout_height="150dp"
android:layout_gravity="center" >
<ImageView
android:id="@+id/imageChips"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_gravity="center"
android:src="@drawable/ic_launcher" />
</FrameLayout>
</FrameLayout>
</LinearLayout>
Re: Урок 20. Анимация
Я так понял, на android 2.1 это не работает ?
Re: Урок 20. Анимация
Работает.
Re: Урок 20. Анимация
А возможно дописать статью на тему fillAfter и физического расположения Layout после? В интернете мало об этом информации...
Re: Урок 20. Анимация
Да, надо бы. Полезная штука. Внесу в список будущих материалов.Blockhead писал(а):А возможно дописать статью на тему fillAfter и физического расположения Layout после? В интернете мало об этом информации...
Re: Урок 20. Анимация
Не работает меню. Не вызывается в эмуляторе и реальном устройстве (при нажатии на кнопку меню ничего не происходит). Код из урока один в один.
avd android 2.3.3, real device android 2.3.4
Предыдущие уроки компилировались и запускались нормально. В чём может быть здесь дело?
avd android 2.3.3, real device android 2.3.4
Предыдущие уроки компилировались и запускались нормально. В чём может быть здесь дело?
Re: Урок 20. Анимация
Речь об этом уроке? Продебажьте или поставьте запись в лог в методе onCreateContextMenu, чтобы проверить вызывается он или нет.Lorkn писал(а):Не работает меню. Не вызывается в эмуляторе и реальном устройстве (при нажатии на кнопку меню ничего не происходит). Код из урока один в один.
avd android 2.3.3, real device android 2.3.4
Предыдущие уроки компилировались и запускались нормально. В чём может быть здесь дело?
строка registerForContextMenu(tv); точно есть?
Re: Урок 20. Анимация
Прошу извинить за невнимательность. Всё работает.