رفتن به مطلب
  • 0

ذخیره ماندن شماره Activity برای ورود های بعدی


peymanparkour

سوال

سلام دوستان

چطوری میشه مثلا کسی موقعه مطالعه یک مطلب وقتی از برنامه اومد بیرون و باز دوباره رفت توی برنامه از ادامه اش بیاد؟؟؟

یا مثلا 20 تا module هست طرف تو module 13 از برنامه اومد بیرون و دوباره رفت تو برنامه از همون 13 بیاد؟؟

با تشکر

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

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

سلام دوستان

چطوری میشه مثلا کسی موقعه مطالعه یک مطلب وقتی از برنامه اومد بیرون و باز دوباره رفت توی برنامه از ادامه اش بیاد؟؟؟

یا مثلا 20 تا module هست طرف تو module 13 از برنامه اومد بیرون و دوباره رفت تو برنامه از همون 13 بیاد؟؟

با تشکر

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

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

سلام به نظر شما عنوان شما الان مناسبه؟

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

سلام به نظر شما عنوان شما الان مناسبه؟

من اومدم دیدم گفتم هیچی نگم بهتره. منتظر بودم بقیه بیان بگن *خنده**خنده**خنده**خنده**خنده*

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

یه edittext بزار و شماره اکتیویتی رو توش بنویس بعد با این کد اونو تو یه فایل ذخیره کن

    File.WriteString(File.DirInternal,"test.txt",edittext1)    

تو اجرای بعدی تو اکتیویتی اصلی با این کد فرا خونیش کن اون تکستو تو یه edit text دیگه

edittext2.text=file.ReadString(file.DirInternal,"test.txt")

بعد با شماره داخل edittext2 اکتیویتی رو start کن

در ضمن عنوان خیلی مهمه شاید یکی هم مشکل شمارو داره و باید با سرچ بتونه پیدا کنه تاپیکو

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

مرسی آقا فرزاد من با این کار کردم ولی به نتیجه نرسیدم

من میخوام یه باتن تعریف کنم که وقتی روش کلیک بشه از ادامه ی اکتیوی ای که آخرین بار اونجا بود بیاد...

حالا نمیدونم شایدم من اشتباه کار میکنم

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

این کاری که دوست گلمون گفت انجام بدید کار میکنه

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

این دستور ادامه

[color=#0000BB][font=monospace][i]Sub Activity_Create[/i][/font][/color][color=#007700][font=monospace][i]([/i][/font][/color][color=#0000BB][font=monospace][i]FirstTime [/i][/font][/color][color=#007700][font=monospace][i]As [/i][/font][/color][color=#0000BB][font=monospace][i]Boolean[/i][/font][/color][color=#007700][font=monospace][i])
   If [/i][/font][/color][color=#0000BB][font=monospace][i]File[/i][/font][/color][color=#007700][font=monospace][i].[/i][/font][/color][color=#0000BB][font=monospace][i]Exists[/i][/font][/color][color=#007700][font=monospace][i]([/i][/font][/color][color=#0000BB][font=monospace][i]File[/i][/font][/color][color=#007700][font=monospace][i].[/i][/font][/color][color=#0000BB][font=monospace][i]DirInternal[/i][/font][/color][color=#007700][font=monospace][i], [/i][/font][/color][color=#DD0000][font=monospace][i]"PageNumber.text"[/i][/font][/color][color=#007700][font=monospace][i]) [/i][/font][/color][color=#0000BB][font=monospace][i]Then
       File[/i][/font][/color][color=#007700][font=monospace][i].[/i][/font][/color][color=#0000BB][font=monospace][i]Delete[/i][/font][/color][color=#007700][font=monospace][i]([/i][/font][/color][color=#0000BB][font=monospace][i]File[/i][/font][/color][color=#007700][font=monospace][i].[/i][/font][/color][color=#0000BB][font=monospace][i]DirInternal[/i][/font][/color][color=#007700][font=monospace][i], [/i][/font][/color][color=#DD0000][font=monospace][i]"PageNumber.text"[/i][/font][/color][color=#007700][font=monospace][i])
   [/i][/font][/color][color=#0000BB][font=monospace][i]End [/i][/font][/color][color=#007700][font=monospace][i]If
   [/i][/font][/color][color=#0000BB][font=monospace][i]File[/i][/font][/color][color=#007700][font=monospace][i].[/i][/font][/color][color=#0000BB][font=monospace][i]WriteString[/i][/font][/color][color=#007700][font=monospace][i]([/i][/font][/color][color=#0000BB][font=monospace][i]File[/i][/font][/color][color=#007700][font=monospace][i].[/i][/font][/color][color=#0000BB][font=monospace][i]DirInternal[/i][/font][/color][color=#007700][font=monospace][i], [/i][/font][/color][color=#DD0000][font=monospace][i]"PageNumber.text"[/i][/font][/color][color=#007700][font=monospace][i], [/i][/font][/color][color=#DD0000][font=monospace][i]"1"[/i][/font][/color][color=#007700][font=monospace][i])
[/i][/font][/color][color=#0000BB][font=monospace][i]End Sub  [/i][/font][/color]

[color=#0000BB][font=monospace][i]Sub Button1_Click
   [/i][/font][/color][color=#007700][font=monospace][i]If [/i][/font][/color][color=#0000BB][font=monospace][i]File[/i][/font][/color][color=#007700][font=monospace][i].[/i][/font][/color][color=#0000BB][font=monospace][i]Exists[/i][/font][/color][color=#007700][font=monospace][i]([/i][/font][/color][color=#0000BB][font=monospace][i]File[/i][/font][/color][color=#007700][font=monospace][i].[/i][/font][/color][color=#0000BB][font=monospace][i]DirInternal[/i][/font][/color][color=#007700][font=monospace][i], [/i][/font][/color][color=#DD0000][font=monospace][i]"PageNumber.text"[/i][/font][/color][color=#007700][font=monospace][i]) [/i][/font][/color][color=#0000BB][font=monospace][i]Then
   Dim a [/i][/font][/color][color=#007700][font=monospace][i]As [/i][/font][/color][color=#0000BB][font=monospace][i]String
   a [/i][/font][/color][color=#007700][font=monospace][i]= [/i][/font][/color][color=#0000BB][font=monospace][i]File[/i][/font][/color][color=#007700][font=monospace][i].[/i][/font][/color][color=#0000BB][font=monospace][i]ReadString[/i][/font][/color][color=#007700][font=monospace][i]([/i][/font][/color][color=#0000BB][font=monospace][i]File[/i][/font][/color][color=#007700][font=monospace][i].[/i][/font][/color][color=#0000BB][font=monospace][i]DirInternal[/i][/font][/color][color=#007700][font=monospace][i], [/i][/font][/color][color=#DD0000][font=monospace][i]"PageNumber.text"[/i][/font][/color][color=#007700][font=monospace][i])
   [/i][/font][/color][color=#0000BB][font=monospace][i]StartActivity[/i][/font][/color][color=#007700][font=monospace][i]([/i][/font][/color][color=#DD0000][font=monospace][i]"Page" [/i][/font][/color][color=#007700][font=monospace][i]& [/i][/font][/color][color=#0000BB][font=monospace][i]a[/i][/font][/color][color=#007700][font=monospace][i])
   [/i][/font][/color][color=#0000BB][font=monospace][i]Activity[/i][/font][/color][color=#007700][font=monospace][i].[/i][/font][/color][color=#0000BB][font=monospace][i]Finish
   [/i][/font][/color][color=#007700][font=monospace][i]Else
   [/i][/font][/color][color=#0000BB][font=monospace][i]ToastMessageShow[/i][/font][/color][color=#007700][font=monospace][i]([/i][/font][/color][color=#DD0000][font=monospace][i]"No result for last page"[/i][/font][/color][color=#007700][font=monospace][i], [/i][/font][/color][color=#0000BB][font=monospace][i]True[/i][/font][/color][color=#007700][font=monospace][i])
   [/i][/font][/color][color=#0000BB][font=monospace][i]End [/i][/font][/color][color=#007700][font=monospace][i]If
[/i][/font][/color][color=#0000BB][font=monospace][i]End Sub  [/i][/font][/color]

رو چجوری میشه رو case اجرا کرد

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

خب ببینید دوست من شما برای مثال 50 تا اکتیویتی دارید که کتاب های متنوعی داخلش وجود داره

خب بنده میام برای هر اکتیویتی یک شماره(اندیس) اختصاص میدم یعنی برای ورود به هر اکتویتی یک عدد در نظر میگیریم،برای مثال برای اکتیویتی 13 عدد 256 رو در نظر میگیریم

موقعی که من رو دکمه کلیک میکنم تا وارد اکتیویتی 13 بشه اول میام عدد 256 ذخیره میکنم توی دیتابیس

در مرحله بعدی میام اطلاعات دیتابیس رو لود میککنیم و با شرط میگیم اگه اندیس 256 بود توی رویداد Activity_Create میاییم ماژول 13 رو باز میکنیم

ببینید این یک احتماله و الان بنده نرم افزار بیسیک رو ندارم

ولی به اینصورت عمل میکنه و میتونید کارتون رو راه بندازید

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

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

بحث جالبی هست.

فکر کنم با Select Case یکی از بهترین راه های اعمال این کار باشه.

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

سلام خسته نباشید . اصلا این کار لازم نیست . چرا الکی کد ها رو زیاد میکنید ؟؟

کافیه تویه Process_Global یک int تعریف کنیم به این شکل .


Sub Process_Globals


       Dim Sina As Int



End Sub

حالا تو هر اکتیویتی که رفت شماره اون رو براش ذخیره کنید . مثلا اگه رفت تو اکتیویتی 5 بگیم :


Sina = 5

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


Sub Button1_Click

 If XActivity.Sina = 0 Then
Startactivity(1)



Else If  XActivity.Sina = 1 Then


Startactivity(2)


End If



End Sub



تویه کد بالا XActivity اسم اکتیویتی بود که توش sina رو تعریف کردی .

شما کار خودتون رو سخت کردید . باید از SlidingPanels استفاده میکردید که آموزشش رو دادم قبلا :

http://answercenter.ir/thread245.html#post946

موفق باشید ;)

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

سینا جان روش شما هم خوبه ولی ...

اگه گوشی خاموش بشه و برنامه رو دوباره باز کنید اطلاعات اکتیویتی ذخیره نیستند !

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

البته حقیقا منظور شما رو کامل و درست متوجه نشدم که چطوری میخواهید با SlidingPanels این کار رو انجام بدید !

یا شما منظور کاربر رو اشتباه گرفتید یا بنده منظور شما را اشتباه گرفتم.

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

برای ذخیره شدن یا باید از دیتا بیس استفاده کرد یا لایبرری .

ایشون برای هر فصل از کتابشون یک ماژول تعریف کردن و این طوری باید رویه 50 تا دیزاین کار کنن .

با Sliding Panels میتونن یک Layout طراحی کنن و از این لایوت برای همه ی Slide Panel ها استفاده کنند .

باید سعی کنیم کد هارو کم کنیم . و با کد های مختصر کارمون رو انجام بدیم .

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

*لال* این سوال بیش از حد راحته کاربری که سوال کرد اگر متوجه منظور دوستان نشدی بگو تا با رسم فیلم توضیح رو بدیم *لال*

تشکر از دوستان بابت جواب ها

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

دوستان مرسی بابات جواب هاتون با sliding panel هم به جایی نرسیدم *لال**لال*

من یه کد ادامه ای مثل این برنامه میخوام http://cafebazaar.ir/app/com.opcomics.walking_dead_101_105/?l=fa

اگه تو دردسر نمی افتید یا مشغول نیستید ممنون میشم با فیلم توضیح بدید *قلب*

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

این برنامه هم باید از slidePanel استفاده کرده باشه . شما برای داشتن ادامه شماره ی آخرین اکتیویتی که بازدید شه رو تویه دیتا بیس ذخیره کنید دیگه هیچ مشکلی نیست .

برای اسلاید پنل هم باید روش کار کنید و کد هارو بفهمید نمیشه تو 5 دقیقه کارشو انجام داد .

اگه کار با دیتا بیس رو بلد نیستید اطلاعات رو بزارید تا سورس کد بهتون بدم .

موفق باشید

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

فیلم میگیرم فقط واسه آخرین بار یه بار توضیح بده چی میخای *لال* یه بار میبینی فیلم میگیرم یه چیز دیگه در میاد

شما میخای مثلا یه برنامه داشته باشی 10 تا اکتیویتی داشته باشه کاربر از هرکدوم اومد بیرون از دوباره رفت توش از همون اکنیویتی که رفته بیرون باز شه؟

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

دقیقا راهنمایی های دوستان کاملا صحیحه.

من هم راه خودمو میگم.

اگه تو انتخاب اسم اکتیویتی ها که قراره باز بشه ترتیب خاصی داشته باشی این راهی که می گم کد نویسی کمی داره و راحت تره.

فرض می کنیم که اسم اکتیوتی ها اینجوری انتخاب شده:

Page1, Page2, Page3, ..., Page20

حالا برای مثلا Page1 توی Activity Creat اینو بنویس:

Sub Activity_Create(FirstTime As Boolean)
   If File.Exists(File.DirInternal, "PageNumber.text") Then
       File.Delete(File.DirInternal, "PageNumber.text")
   End If
   File.WriteString(File.DirInternal, "PageNumber.text", "1")
End Sub

برای page های دیگه کافیه اون 1 رو عوض کنی عدد همون Page رو بزاری.

حالا توی رویداد اون Button که گفتی باید این کد رو بزاری:

Sub Button1_Click
   If File.Exists(File.DirInternal, "PageNumber.text") Then
   Dim a As String
   a = File.ReadString(File.DirInternal, "PageNumber.text")
   StartActivity("Page" & a)
   Activity.Finish
   Else
   ToastMessageShow("No result for last page", True)
   End If
End Sub

تستش نکردم اگه درست کار نکرد خبر بده اما 99% باید درس کار کنه.

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

فیلم میگیرم فقط واسه آخرین بار یه بار توضیح بده چی میخای *لال* یه بار میبینی فیلم میگیرم یه چیز دیگه در میاد

شما میخای مثلا یه برنامه داشته باشی 10 تا اکتیویتی داشته باشه کاربر از هرکدوم اومد بیرون از دوباره رفت توش از همون اکنیویتی که رفته بیرون باز شه؟

مرسی آقا آرمین من این کدی که دوستمون jeqele داده رو امتحان بکنم اگه لازم بود واستون یه توضیح کامل میدم بازم ببخشید که تو دردسر انداختمتون

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

دقیقا راهنمایی های دوستان کاملا صحیحه.

من هم راه خودمو میگم.

اگه تو انتخاب اسم اکتیویتی ها که قراره باز بشه ترتیب خاصی داشته باشی این راهی که می گم کد نویسی کمی داره و راحت تره.

فرض می کنیم که اسم اکتیوتی ها اینجوری انتخاب شده:

Page1, Page2, Page3, ..., Page20

حالا برای مثلا Page1 توی Activity Creat اینو بنویس:

Sub Activity_Create(FirstTime As Boolean)
   If File.Exists(File.DirInternal, "PageNumber.text") Then
       File.Delete(File.DirInternal, "PageNumber.text")
   End If
   File.WriteString(File.DirInternal, "PageNumber.text", "1")
End Sub

برای page های دیگه کافیه اون 1 رو عوض کنی عدد همون Page رو بزاری.

حالا توی رویداد اون Button که گفتی باید این کد رو بزاری:

Sub Button1_Click
   If File.Exists(File.DirInternal, "PageNumber.text") Then
   Dim a As String
   a = File.ReadString(File.DirInternal, "PageNumber.text")
   StartActivity("Page" & a)
   Activity.Finish
   Else
   ToastMessageShow("No result for last page", True)
   End If
End Sub

تستش نکردم اگه درست کار نکرد خبر بده اما 99% باید درس کار کنه.

خیلی ممنونم ازت درست کار کرد*مرسی**مرسی*

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

بایگانی شده

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

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

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