splash
سلام
یرای ساخت اسپلش میخوام چنتا عکسو پشت سر هم نمایش بدم با این کد :
۱ ۲ ۳ ۴ ۵ ۶ ۷ ۸ ۹ ۱۰ ۱۱ ۱۲ ۱۳ ۱۴ ۱۵ ۱۶ |
Activity.LoadLayout("splash") t1.Initialize("t1" , ۱۰۰۰) t1.Enabled=True ub t1_Tick If cunt <= ۴ Then img_splash.Bitmap = LoadBitmap(File.DirAssets,"sp"&cunt&".jpg") cunt=cunt+۱ Else cunt=۰ End If end sub |
مثلا ۴ عکس اما این هر بار این خطا رو میده
۱ ۲ ۳ ۴ ۵ ۶ ۷ ۸ ۹ ۱۰ ۱۱ ۱۲ ۱۳ ۱۴ ۱۵ ۱۶ ۱۷ ۱۸ ۱۹ ۲۰ ۲۱ ۲۲ ۲۳ ۲۴ ۲۵ ۲۶ ۲۷ ۲۸ ۲۹ ۳۰ ۳۱ |
:null,۰ java.lang.ClassNotFoundException: b4a$example$starter at java.lang.Class.classForName(Native Method) at java.lang.Class.forName(Class.java:۲۵۱) at java.lang.Class.forName(Class.java:۲۱۶) at anywheresoftware.b4a.shell.Shell.getCorrectClassName(Shell.java:۶۲۴) at anywheresoftware.b4a.shell.Shell.runMethod(Shell.java:۷۲۶) at anywheresoftware.b4a.shell.Shell.raiseEventImpl(Shell.java:۳۴۸) at anywheresoftware.b4a.shell.Shell.raiseEvent(Shell.java:۲۵۵) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:۵۱۵) at anywheresoftware.b4a.ShellBA.raiseEvent2(ShellBA.java:۱۴۴) at b4a.example.main.afterFirstLayout(main.java:۹۷) at b4a.example.main.access$۰۰۰(main.java:۱۷) at b4a.example.main$WaitForLayout.run(main.java:۸۲) at android.os.Handler.handleCallback(Handler.java:۷۳۳) at android.os.Handler.dispatchMessage(Handler.java:۹۵) at android.os.Looper.loop(Looper.java:۱۳۶) at android.app.ActivityThread.main(ActivityThread.java:۵۰۱۹) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:۵۱۵) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:۷۷۹) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:۵۹۵) at dalvik.system.NativeStart.main(Native Method) Caused by: java.lang.NoClassDefFoundError: b4a$example$starter ... ۲۲ more Caused by: java.lang.ClassNotFoundException: Didn't find class "b4a$example$starter" on path: DexPathList[[zip file "/data/app/b4a.example-2.apk"],nativeLibraryDirectories=[/data/app-lib/b4a.example-۲, /system/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:۵۶) at java.lang.ClassLoader.loadClass(ClassLoader.java:۴۹۷) at java.lang.ClassLoader.loadClass(ClassLoader.java:۴۵۷) ... ۲۲ more |
پاسخ ( 1 )
سلام
آموزش زیر رو مطالعه کنید.
آموزش برنامه نویسی اندروید با B4A – قسمت دهم(اسپلش اسکرین)
اگه نخواید طبق آموزش بالا و با Switch انجام ندید، باید از حلقه های تکرار نظیر for استفاده کنید.
به این صورت که:
با هر بار اجرای حلقه، شمارنده یه گام افزایش پیدا کنه و نام تصویر هم به همین صورت(تصاویر رو میتونید از ۱ تا ۴ شماره گزاری کنید) و تا زمانی که کوچکتر از ۴ هست این عمل تکرار بشه.
با اولین بار اجرای حلقه؛ مقدار ۱ هست و تصویر ۱ نمایش داده میشه، در گام بعدی شمارنده میشه ۲ و تصویر ۲ و الی آخر …
شما در کدی که نوشتید، با دستور if نوشتید، این دستور شرطی هست، در کد نوشتید که اگر count <= 4 بود، یکی بهش اضافه کنه و اگه نبود else اجرا میشه(دیگه نمیگرده که یه مقدار به count اضافه کنه و دوباره شرط رو بررسی کنه)
ولی حلقه ها تا زمانی که شرط برقرار نباشه، دستورات اجرا میشه، وقتی شرط برقرار شد از حلقه می پره بیرون.