رفتن به مطلب

انیمیشن ابتدایی و بین اکتیویتی ها


Nemesis

ارسال‌های توصیه شده

دوستان سریع عرض میکنم خدمتتون و بقیه کار ها با شما بزرگواران

 

1. بسیار پیش اومده که دوستان مشکل در انیمیشن ابتدایی نرم افزار یعنی زمان باز شدن از بالا سمت چپ داشتن خوب شما کتابخانه انیمیشن رو تیک بزنید سپس کد زیر رو هرجور دوست دارید ویرایش کنید

    Dim btnanim As Animation
Activity.LoadLayout("layout")
btnanim.InitializeScaleCenter("", 0,0,1,1, Activity)
btnanim.Duration = 500
btnanim.Start(Activity)

خوب در خصوص انیمیشن بین اکتیویتی ها باید از فایل XML استفاده کنید که باید در آدرس

 

Objects\res\anim

 

ایجاد کنید و حتما تاکید میکنم حتما باید ReadOnly کنیدشون و با کد زیر فراخوانی کنید

StartActivity(aaa)
SetAnimation("file1", "file4")
Sub SetAnimation(InAnimation As String, OutAnimation As String)
    Dim r As Reflector
    Dim package As String
    Dim In, out As Int
   package = r.GetStaticField("anywheresoftware.b4a.BA", "packageName")
    In = r.GetStaticField(package & ".R$anim", InAnimation)
    out = r.GetStaticField(package & ".R$anim", OutAnimation)
    r.Target = r.GetActivity
    r.RunMethod4("overridePendingTransition", Array As Object(In, out), Array As String("java.lang.int", "java.lang.int"))
End Sub

خوب اینم کد های پایه XML

 

file1

<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="1000"
    android:fromXDelta="0%"
    android:toXDelta="100%" />

File 2

<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="1000"
    android:fromXDelta="-100%"
    android:toXDelta="0%" />

File 3

<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="1000"
    android:fromXDelta="100%"
    android:toXDelta="0%" />

File 4

<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="1000"
    android:fromXDelta="0%"
    android:toXDelta="-100%" />

دوستان بنده خیلی خیلی درگیر چند پروژه بزرگم به زودی با آموزش های قدرتمند بر میگردم

 

فراموش نکنید این فقط ماهیگیری بود خودتون تلاش کنید مشکل بود بکید سورس بذارم

 

در پناه حق

لینک ارسال
به اشتراک گذاری در سایت های دیگر

  • 3 هفته بعد...

دوست عزیز اگه بخوایم اکتیویتی بجای اینکه از یه طرف به طرف دیگه بره محو بشه باید چیکار کنیم؟؟؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

دوست عزیز اگه بخوایم اکتیویتی بجای اینکه از یه طرف به طرف دیگه بره محو بشه باید چیکار کنیم؟؟؟

Dim an1 As AnimationPlus
an1.InitializeAlpha("a1",0,1)
an1.PersistAfter = True
an1.Duration=2500
an1.Start(activityname)
لینک ارسال
به اشتراک گذاری در سایت های دیگر

دوستان برای اینکه بتونم بعد از اعمال انیمیشن روی یک ایمیج ویو میخوام بهش بگم بره به یه اکتیویتی دیگه باید چیکار کنم؟؟؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در رویداد Animation Complete یا Ended یادم نیست دقیق از اون متغیر انیمیشن باید کدهاتون رو بنویسید

لینک ارسال
به اشتراک گذاری در سایت های دیگر

 

عزیزان برای اینکه بخوام سرعت اجرا شدن اکتیویتی رو کم کنم باید چیکار کنم؟قبلا انجام دادم ولی الان به ذهنم نمیرسه :zoor:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

دوستان برای اینکه بتونم بعد از اعمال انیمیشن روی یک ایمیج ویو میخوام بهش بگم بره به یه اکتیویتی دیگه باید چیکار کنم؟؟؟

Sub b1_AnimationEnd
کار مورد نظر بعد از اتمام انیمیشن
End Sub 

b1 اسم رویدادی هست که برای انیمیشن تعریف کردیم.

مثلا اگه گفته باشیم an1.InitializeAlpha("a1",0,1) بیاید به جای b1 توی کد بالا بنویسیم a1

لینک ارسال
به اشتراک گذاری در سایت های دیگر

  • 4 ماه بعد...

ببخشید تاپیک قدیمی رو میارم بالا 

اگر بخام انیمیشن اکتیویتی هم محو بشه هم از سمت راست به چپ چه کار کنم؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

ببخشید تاپیک قدیمی رو میارم بالا 

اگر بخام انیمیشن اکتیویتی هم محو بشه هم از سمت راست به چپ چه کار کنم؟

کسی نیست؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

ببخشید تاپیک قدیمی رو میارم بالا 

اگر بخام انیمیشن اکتیویتی هم محو بشه هم از سمت راست به چپ چه کار کنم؟

کسی نبود؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بخدا توضیحات خیلی کمه

من که تجربه ای ندارم هیچی متوجه نمیشم

لینک ارسال
به اشتراک گذاری در سایت های دیگر

الان دقیقا کجاشو متوجه نشدی

ببنید کدهای که تو پست اول هستو تو ادیتور مثل نوت پد کپی کن 

مثلا اولی نوشته به اسم file1 تو نوت پد اولیو کپی کن و برای ذخیره کردنش اسمش file1.xml سیو کن والی آخر

بعد تو پوشه  آبجکت و بعد تو res یه پوشه به اسم anim ایجاد کن اگر بود که هیچ (در ضمن فایل های xml حتما باید رد آنلی باشه وگرنه خطا میده )

مابقی توضیحات تو پست اول هست

Objects\res\anim

لینک ارسال
به اشتراک گذاری در سایت های دیگر

 

الان دقیقا کجاشو متوجه نشدی

ببنید کدهای که تو پست اول هستو تو ادیتور مثل نوت پد کپی کن 

مثلا اولی نوشته به اسم file1 تو نوت پد اولیو کپی کن و برای ذخیره کردنش اسمش file1.xml سیو کن والی آخر

بعد تو پوشه  آبجکت و بعد تو res یه پوشه به اسم anim ایجاد کن اگر بود که هیچ (در ضمن فایل های xml حتما باید رد آنلی باشه وگرنه خطا میده )

مابقی توضیحات تو پست اول هست

Objects\res\anim

تواین خط بهم اخطار مید

   In = r.GetStaticField(package & ".R$anim", InAnimation)
    out = r.GetStaticField(package & ".R$anim", OutAnimation)
لینک ارسال
به اشتراک گذاری در سایت های دیگر

الان تو این تاپیک برو سورس دانلود و استفاده کن شاید جای رو اشتباه میری (من همین الان تست کردم مشکلی نداشت)

لینک ارسال
به اشتراک گذاری در سایت های دیگر

الان تو این تاپیک برو سورس دانلود و استفاده کن شاید جای رو اشتباه میری (من همین الان تست کردم مشکلی نداشت)

واقعا دستت درد نکنه.فوق العاده ممنونم

لینک ارسال
به اشتراک گذاری در سایت های دیگر

  • 3 ماه بعد...

سلام

من از این آموزش استفاده کردم

انیمیشن هم اجرا میشه

اما تا انیمیشن تموم نشه، لی اوت اکتیویتی بعدی لود نمیشه، که جالب نیست

چجوری میشه موقع اجرای انیمشن لی اوت رو لود کرد؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

  • 9 ماه بعد...

سلام میشه نمونه سورس کامل بزارید برای دانلود.یا اگه بقیه دارن بزارن مرسی خیلی ممنون:heart:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در در 1395/10/28, 11:07:56، سینا پارکور گفته است :

سلام میشه نمونه سورس کامل بزارید برای دانلود.یا اگه بقیه دارن بزارن مرسی خیلی ممنون:heart:

 

در در 1394/09/13, 12:42:27، dftbayat گفته است :

الان تو این تاپیک برو سورس دانلود و استفاده کن شاید جای رو اشتباه میری (من همین الان تست کردم مشکلی نداشت)

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

  • 1 سال بعد...
در در 1394/04/08, 20:01:43، Nemesis گفته است :

Dim an1 As AnimationPlus
an1.InitializeAlpha("a1",0,1)
an1.PersistAfter = True
an1.Duration=2500
an1.Start(activityname)

من این کد رو نوشتم. اما بهم خطا داد از آخرین خطش.

به جای activityname باید اکتیویتی مبدا رو بنویسم یا اکتیویتی مقصد?

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...