رفتن به مطلب

سورس اسلاید منو حرفه ای (شبیه سازی شده به متریال)


پژمان نیکروان

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

سلام...


 


خیلی از دوستان سورس اسلاید منو میخواستن ، تو سایت بود ولی همشون مثل اینکه یه مشکل کوچیک داشتن ، بعضیا نمیشد برای لایوت منو دیزاین اسکریپت نوشت و بعضیا هم برای لایوت اصلی مون نمیتونستیم اسکریپت بنویسیم ، اگه هم نمینوشتیم هم که جالب نمیشد و برنامه کلا بهم میریخت.


 


این سورس ساده رو آماده کردم ، حالا نمیدونم میشه بهش گفت حرفه ای یانه ، ولی کدهای ساده ای داره که با استفاده ازکتابخانه AHNavigationDrawer نوشتیمش.


 


نمونه ای که خودم ساختم برای یک برنامه:


 


1.png


 


نمونه ای که الان ساختیم برای همین سورس:


 


2.png


 


توجه کنید که اینجا من پنل گذاشتم ، شما میتونید جای پنل هرچی بذارید ، مثل: لیست ویو ، اسکرول ویو و...


اون بالاییش هم یه عکسه.


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


واسه اکتیویتی اصلی هم اسکریپت دیزاین نوشتیم و مشکلی ایجاد نشد.


شما میتونید براحتی منو رو تنظیم کنید که از سمت راست باز باشه یا سمت چپ (توی سورس  توضیح داده شده)


 


دانلود سورس و کتابخانه


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

  • پاسخ 100
  • ایجاد شده
  • آخرین پاسخ

مثل همیشه عالی 

تشکر خالی کفاف زجمت نمیداد 

:gol:  :gol:

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

مثل همیشه عالی.تشکر کافی نبود باید پست می زدم.امیدوارم مشکل اکثر دوستان در اسلاید منو با این سورس حل شود.باز هم ممنون :gol:

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

واقعا عالی . بعد از تست و ویریش 5-6 تا سورس این بهترین سورسی بود که دیدم . ممنون !


 


ساده ، زیبا ، مطمئن


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

سلام و تشکر 
سوالم به عنوان یک مبتدی !
برنامه من الان آماده شده و نیاز دارم یک منو برای اون قرار بدم 
دکمه منو رو میخام در بالای همه اکتیویتی ها داشته باشم 
آیا بعد از تنظیمات لیست و یو و مشخصات منو در این مدل 
باید بیام در همه اکتیویتی ها این کدها رو جای گزین کنم 
یا 
روشی هست که یک اکتیویتی بنویسیم و این کدها رو قرار بدیم و با دکمه بالای هر اکتیویتی " دکمه منو" بتونیم اون رو فراخونی کنیم و باز بشه؟

پیشاپیش تشکر از راهنمای شما

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

سلام و تشکر 

سوالم به عنوان یک مبتدی !

برنامه من الان آماده شده و نیاز دارم یک منو برای اون قرار بدم 

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

آیا بعد از تنظیمات لیست و یو و مشخصات منو در این مدل 

باید بیام در همه اکتیویتی ها این کدها رو جای گزین کنم 

یا 

روشی هست که یک اکتیویتی بنویسیم و این کدها رو قرار بدیم و با دکمه بالای هر اکتیویتی " دکمه منو" بتونیم اون رو فراخونی کنیم و باز بشه؟

پیشاپیش تشکر از راهنمای شما

سلام.

خب دکمه منو که باید برای همه اکتیویتی ها بذارید ، این سورس هم اگه نگاه کرده باشید یه ساب به نام Slide داره.

شما میتونید تو هر اکتیویتی این ساب رو به همراه کداش قرار بدید و هرجا دوست داشتین صداش بزنید مشکلی پیش نمیاد . (یعنی برای همه اکتیویتی ها اینو اعمال بکنید)

از طرفی هم میتونید یه کلاس بسازید و کدهای منو رو اونجا بذارید و هروقت خواستین تو هر اکتیویتی صداش بزنید و استفادش کنید ، فرقی نداره...

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

سلام.

خب دکمه منو که باید برای همه اکتیویتی ها بذارید ، این سورس هم اگه نگاه کرده باشید یه ساب به نام Slide داره.

شما میتونید تو هر اکتیویتی این ساب رو به همراه کداش قرار بدید و هرجا دوست داشتین صداش بزنید مشکلی پیش نمیاد . (یعنی برای همه اکتیویتی ها اینو اعمال بکنید)

از طرفی هم میتونید یه کلاس بسازید و کدهای منو رو اونجا بذارید و هروقت خواستین تو هر اکتیویتی صداش بزنید و استفادش کنید ، فرقی نداره...

سلام استاد " جناب نیکروان " 

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

دوم به عنوان یک مبتدی و شاگرد 

فکر میکنم منطقی ترین راه اینه که کد نویسی رو کم کنیم " تا جایی که امکان داره" پس بهتره که یک " کلاس ساخته بشه "

میتونم خواهش کنم که راهنمایی کنید که معمولا این کلاس ها رو در چه اکتیویتی باید ساخت ؟ ( اکتویتی main یا starter) 

و چه طور میتونم یک کلاس بسازم در کل و اون رو در یک اکتیویتی دیگه با " کلیک یک دکمه فراخونی کنم "

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

و اگر امکان داره اینجا راهنمایی کنید و یا لینکی برای آموزش در انجمن معرفی کنید تا مطالعه کنم 

سپاس و تشکر

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

سلام استاد " جناب نیکروان " 

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

دوم به عنوان یک مبتدی و شاگرد 

فکر میکنم منطقی ترین راه اینه که کد نویسی رو کم کنیم " تا جایی که امکان داره" پس بهتره که یک " کلاس ساخته بشه "

میتونم خواهش کنم که راهنمایی کنید که معمولا این کلاس ها رو در چه اکتیویتی باید ساخت ؟ ( اکتویتی main یا starter) 

و چه طور میتونم یک کلاس بسازم در کل و اون رو در یک اکتیویتی دیگه با " کلیک یک دکمه فراخونی کنم "

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

و اگر امکان داره اینجا راهنمایی کنید و یا لینکی برای آموزش در انجمن معرفی کنید تا مطالعه کنم 

سپاس و تشکر

بنظر من اصلا کد زیادی نیست و مشکلی ایجاد نمیکنه ، فقط قراره یه ساب رو توی اکتیویتی ها بذارید که چند خط کد داره.

اما میتونید کلاس رو از منوی Project و گزینه Add New Moudle اضافه کنید و کدها رو ببرید اونجا ، یعنی در واقع یه کتابخانه کوچیک بسازید.

منم اگه بتونم روش کار میکنم و کلاسش رو میسازم.

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

سلام مجدد مرسی از راهنمایی
طبق دستور شما سعی کردم کد ها رو در اکتیویتی اصلی خودم کپی کنم 
همه چیز خوبه و منو خوب باز و بسته میشه و فعاله 
فقط نمی دونم چرا " عکس بک راند " پشت زمینه لیست ویو من رو لود نمیکنه !!!
هرچی جا به جا کردم نشد.
کد رو قرار میدم اگر زحمتی نیست یک نگاهی بندازید ببینید کجای کارم اشتباه هست ؟
مرسی 
 


Sub Activity_Create(FirstTime As Boolean)

	sidebar
	
	
	Dim Bitmap1 As Bitmap 'عکس آیکن کنار نوارها تعریف میکنه
	Bitmap1.Initialize(File.DirAssets, "0.png") 'یه آیکن بهش اختصاص میده
	
	LV1.AddTwoLinesAndBitmap("لیست مطالب", "ییییییییییی", Bitmap1)
	LV1.AddTwoLinesAndBitmap("علاقه مندی ها", "موضوعاتی که نشان شده اند", Bitmap1)
	LV1.AddTwoLinesAndBitmap("جستجو","جستجوی یک کلمه در کتاب",Bitmap1)
	LV1.AddTwoLinesAndBitmap("تنظیمات","تنظیمات قلم و اندازه متن کتاب",Bitmap1)
	LV1.AddTwoLinesAndBitmap("دیگر برنامه ها","برنامه های ما در بازار",Bitmap1)
	LV1.AddTwoLinesAndBitmap("خروج","برای خروج از برنامه کلیک کنید",Bitmap1)
	
	LV1.TwoLinesAndBitmap.ItemHeight = 12%y 'ارتفاع ایکن های 2 خطی
	LV1.TwoLinesAndBitmap.Label.TextColor = Colors.RGB(0,0,0) 'رنگ نوشته ردیف بالا
	LV1.TwoLinesAndBitmap.SecondLabel.TextColor = Colors.RGB(26,26,26)
	LV1.TwoLinesAndBitmap.Label.Left = -15%x ' تنظیم کننده فاصلع نوشته ها از لبه  اگر مثبت باشد میرود راست
	LV1.TwoLinesAndBitmap.SecondLabel.Left = -15%x 'تنظیم کننده فاصله نوشته ها از لبه 
	LV1.TwoLinesAndBitmap.ImageView.Left = 80%x 'راست چین کردن آیکن در لیست ویو
	
	
End Sub

Sub Activity_Resume

End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub

'////////////////////////////////////////////
'///////////////////////////////////////////

Sub	sidebar 
	
	lbl9.Initialize("")
	lvm.Initialize("lvm")
	
	navi.Initialize2("navi",Activity,75%x,navi.GRAVITY_RIGHT) ' جهت راست چین بودن ساید بار
	'navi.Initialize2("navi",Activity,75%x,navi.GRAVITY_LEFT)' جهت چپ چین بودن ساید بار
	navi.NavigationPanel.Color = Colors.ARGB(150,236,239,241) ' برای تغییر میزان مرئی بودن ساید بار 150 را تغییر دهید
	navi.NavigationPanel.AddView(lvm,0,30%y,75%x,70%y)
	navi.NavigationPanel.AddView(lbl9,0,0%y,75%x,19%y)

	lbl9.Text="بیسیک4اندروید"
	lbl9.Gravity = Gravity.CENTER
	lbl9.TextColor=Colors.White

	lbl9.Typeface=Typeface.LoadFromAssets("myriadara.ttf")
	lbl9.Color=Colors.ARGB(255,255,193,7)
	
	If Activity.Width <= 500 Then
		lbl9.TextSize=25
	Else If Activity.Width > 500 And Activity.Width <= 1000 Then
		lbl9.TextSize=35
	Else If Activity.Width > 1000 Then
		lbl9.TextSize=40
	End If
		

	lvm.AddTwoLines("اسم برنامه","1")
	lvm.AddTwoLines("برنامه نویسی","2")
	lvm.AddTwoLines("درباره ما","3")
	lvm.AddTwoLines("خروج","4")

	
	
	lvm.TwoLinesLayout.ItemHeight = 8%y
	lvm.TwoLinesLayout.Label.Height = lvm.TwoLinesLayout.ItemHeight
	lvm.TwoLinesLayout.SecondLabel.Height = lvm.TwoLinesLayout.ItemHeight
	
	SetDivider(lvm, Colors.Blue, 0)
	
	SetScrimColor(navi,Colors.ARGB(130,33,33,33))
	pCantent.Initialize("")
	navi.ContentPanel.AddView(pCantent,0,0,100%x,100%y)
	pCantent.SendToBack

	
	pCantent.LoadLayout("menu")

	
	pCantent.Color = Colors.Transparent
	
	
	
	Dim lbltxtsidebar As Label
	lbltxtsidebar = lvm.TwoLinesLayout.Label
	lbltxtsidebar.left = Activity.Left-5%x
	lbltxtsidebar.Top = lbltxtsidebar.top
	myview(lbltxtsidebar,22,"myriadara")
	
	Dim lbltxtsidebar2 As Label
	lbltxtsidebar2 = lvm.TwoLinesLayout.SecondLabel
	lbltxtsidebar2.left = Activity.Left+5%x
	lbltxtsidebar2.Top = lbltxtsidebar.Top
	myview2(lbltxtsidebar2,36,"myriadara")

	
End Sub

مرسی و سپاس

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

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

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

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

عکس سمت چپ و قتی هست که منو رو روی برنامه سوار کردم و در اکتیویتی که میخاستم سورس ها رو کپی کردم 
بعد از بالا اومدن اکتیویتی " عکس پس زمینه اکتیویتی " دقت کنید " عکس پس زمینه اکتیویتی که در دیزاینر به اکتیویتی معرفی کرده بودم شناخته نمی شد"
http://s3.picofile.com/file/8212775526/1111.png
در این خط اومدم دوباره این عکس رو معرفی کردم و درست شد 

pCantent.Color = Colors.Transparent

تبدیلش کردم به 

 

pCantent.SetBackgroundImage(LoadBitmap(File.DirAssets,"aksspaszamine.png"))

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

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

سلام آقای نیک روان ببخشید من یه مشکل داشتم

 

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

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

سلام آقای نیک روان ببخشید من یه مشکل داشتم

 

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

سلام.

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

منظورتون اینه که میخواین مثل نمونه عکس اولی که توی تاپیک هست باتن و آیتم بذارید برای پنل؟؟

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

سلام.

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

منظورتون اینه که میخواین مثل نمونه عکس اولی که توی تاپیک هست باتن و آیتم بذارید برای پنل؟؟

بله میخوام بزارم اما نشون نمیده

@@پژمان نیکروان,

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

بله میخوام بزارم اما نشون نمیده

@@پژمان نیکروان,

نه مشکلی نداره که.

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

دانلود

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

نه مشکلی نداره که.

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

دانلود

سلام به همه دوستان 

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

////////////

می خواستم ببینم چه دستوری باید به منوی بالا اضافه کنیم تا ارتفاع منو ( مثلا از 15%y) شروع بشه که منوی کاربری قشنگ تر بشه!

و همچنین دکمه منوی برنامه که با فلش قرمز مشخص کردم فعال باشه تا بشه با کلیک روش منو رو دوباره ببندیم

البته اگر امکانش هست

عکس رو قرار دادم امید وارم مفهوم رو برسونه

با تشکر 

http://s3.picofile.com/file/8213109568/1111.png

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

سلام به همه دوستان 

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

////////////

می خواستم ببینم چه دستوری باید به منوی بالا اضافه کنیم تا ارتفاع منو ( مثلا از 15%y) شروع بشه که منوی کاربری قشنگ تر بشه!

و همچنین دکمه منوی برنامه که با فلش قرمز مشخص کردم فعال باشه تا بشه با کلیک روش منو رو دوباره ببندیم

البته اگر امکانش هست

عکس رو قرار دادم امید وارم مفهوم رو برسونه

با تشکر 

http://s3.picofile.com/file/8213109568/1111.png

توی دیزاین اسکریپت لایوت منو میتونید عرض رو با dip تغییر بدین تا پنل منو یه خورده پایین تر باز بشه.

دانلود سورس

بااینکار فضای خالی ایجاد میشه اما روی اون فضای خالی نمیشه کلیک کرد ، چون روش یه سایه میفته. (دلیلش اینه که این منو ها متریال هست و منوهای متریال هم معمولا به این شکل تمام صفحه باز میشن.)

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

ولی بازهم من سعی میکنم اگه تونستم رو همین سورس چیزی که میخواین رو اعمال کنم حتما اعلام میکنم.

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

توی دیزاین اسکریپت لایوت منو میتونید عرض رو با dip تغییر بدین تا پنل منو یه خورده پایین تر باز بشه.

دانلود سورس

بااینکار فضای خالی ایجاد میشه اما روی اون فضای خالی نمیشه کلیک کرد ، چون روش یه سایه میفته. (دلیلش اینه که این منو ها متریال هست و منوهای متریال هم معمولا به این شکل تمام صفحه باز میشن.)

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

ولی بازهم من سعی میکنم اگه تونستم رو همین سورس چیزی که میخواین رو اعمال کنم حتما اعلام میکنم.

سلام استاد 

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

یه دنیا تشکر 

من با این کد تونستم بیارمش پایین که عکس رو می بینید ولی حق با شما هست نمیشه رو دکمه زیرش کلیک کرد 

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

مرسی 

http://s6.picofile.com/file/8213125150/22222.png

این هم نتیجه این کد هست 

	navi.NavigationPanel.Top = 15%y
لینک ارسال
به اشتراک گذاری در سایت های دیگر

خواهش میکنم وظیفست.

من الان لینکی مد نظر ندارم اما مطمئنم تو سایت هست.

عبارت "اسلاید منو" رو سرچ کنید.

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

بایگانی شده

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

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

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