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

متغییر لایوت؟


mamalliii

سوال

سلام دوستان

من یک ماژول از نوع class اد کردم(کتابخونه)

مثلا من اگه بخوام یع عدد بگیرم خب داخل پرانتز ساب اینو مینویسم (dim isg as int)

حالا من میخوام لایوت بگیرم

چه نوع متغییری باید تعریف کنم؟object?

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

17 پاسخ به این سوال تاکنون داده شده است

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

شما قصد دارید دقیقا چکاری رو انجام بدید ؟

این کد شما مشکل دارع دوستم

 - شما ویو رو از ورودی گرفتید و اینیشیالیز کردید اما AddView  نکردید ( اگر به وسیله دیزاینر ادد کردید که نیازی نیست Initialize  کنید ، اما اگر می خوایید به وسیله کلاس اضافه کنید باید AddView  کنید )

 - شما کلاس رو باید بعد از LoadLayout  کردن Initialize  و استفاده کنید

 

مثلا این کد رو ببینید :

Activity :

Sub Globals
	Private lbl As Label
	Private img As ImageView
	Private b As Button
End Sub

Sub Activity_Create(FirstTime As Boolean)
	Activity.LoadLayout("Main")
End Sub

Sub Button1_Click
	Dim mm As MyClass
	mm.Initialize
	mm.create(img,lbl,b)
End Sub

Class :

Private Sub Class_Globals
	Private str = "20" As String
	Private format = ".jpg" As String
End Sub

Public Sub Initialize
 'Declare Your Statment
End Sub
Public Sub create(img As ImageView,l As Label , b As Button)
 img.SetBackgroundImage(LoadBitmap(File.DirAssets,str&format))
 l.Text = "Label From Class Module"
 b.Text = "Button From Class"
End Sub

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

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

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

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

ببینید شما اگه ویو هارو از دیزاینر اضافه کردید که خب نیازی به Initialize  نداره

اما شما اگه قصد دارید ویو هارو با کد نویسی اضافه کنید که ابتدا ویو هارو Initialize  کنید بعد AddView  کنید و بعد به تابع create  خودتون بدید

و کدهای مربوط به Initialize   دز تابع create  رو خذف کنید.

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

نه 

 

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

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

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

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

Class Module.rar

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

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

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

ممنون

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

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

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

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

به قوانین احتراام بزارید

شما کد کلاس و کد اکتیویتی رو قرار بدید تا چک کنیم.

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

کد هارو نمتونم کامل قرار بدم

همونطور که دیدین در کلاس ایمیج ویو میگیرم و در اکتیویتی به کلاسم ایمیج ویو رو میدم(از دیزاینر اضافه شده)

بعد داخل کلاس به ایمیج ویو عسک میدم....اما عکس نمیاد.....درضمن ایمیج ویو تو حلقه قرار داره 

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

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

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

سلام

از کلمه dim  استفاده نکنید:

i As Int

 می تونید اسم لایوت رو به صورت رشته یا استرینگ بدید :

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

اهان ممنون

و یک سوال دیگه؟

من داخل یکی از ساب هام از یدونه imageview خواستم

این شکلی: Public Sub (img as imagview)

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

وقتی ران میگرم عکس نمیاد

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

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

کدی که واسه ImageView  و Label  نوشتید اینجا قرار بدید تا بگم مشکلش چیه.

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

کد های کلاس؟یا اکتیویتی؟

Public Sub creat(img As ImageView,lbl As Label,btn As Button)
	img.Initialize("img")
lbl.Initialize("lbl")
btn.Initialize("btn")
	img.Bitmap = LoadBitmap(File.DirAssets,i&str)
	lbl.Text = "shomare"&i
	lbl.TextColor = Colors.White
	scr.Panel.Height = hight
End Sub
لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

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

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

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