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

راستچین کردن AH VIEW PAGER


ehsanqw1234@gmail.com

سوال

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

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

در 12 دقیقه قبل، [email protected] گفته است :

سلام 
چطوری میشه  VIEW PAGER را راستچین کرد ؟؟

من منظورتون رو درست نمیفهمم.. دقیقا چی شو میخواید راستچین کنید؟؟؟؟؟؟

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

یه ترکیب بین ds tab layout و ah  view pager که اولی راسچین شد و لی دومی نه 

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

در 2 دقیقه قبل، [email protected] گفته است :

یه ترکیب بین ds tab layout و ah  view pager که اولی راسچین شد و لی دومی نه 

کد زیر رو درون منیفست قرار بدید ببینید چی میشه

SetActivityAttribute(main , android:supportsRtl, "true")

مطمئن نیستم کار کنه

به جای main اسم اکتیویتی رو بزارید

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

در 14 دقیقه قبل، Mr.Kafiri گفته است :

کد زیر رو درون منیفست قرار بدید ببینید چی میشه


SetActivityAttribute(main , android:supportsRtl, "true")

مطمئن نیستم کار کنه

به جای main اسم اکتیویتی رو بزارید

سلام

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

	Dim j,jo As JavaObject
	jo.InitializeStatic("android.view.View")
	If j.InitializeStatic("android.os.Build$VERSION").GetField("SDK_INT") > 16 Then
		j.InitializeContext.RunMethodJO("getWindow",Null).RunMethodJO("getDecorView",Null) _
		.RunMethod("setLayoutDirection",Array(jo.GetField("LAYOUT_DIRECTION_RTL")))
	End If

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

برای اینکه فقط ویوی مد نظر شما راستچین شه از ساب زیر استفاده کنید:

Sub ForceRtlSupported4View(View As View)
	Try
		Dim jA,jos As JavaObject
		jos.InitializeStatic  ("android.view.View")
		If jA.InitializeStatic  ("android.os.Build$VERSION").GetField ("SDK_INT") > 16 Then
			jA = View
			jA.RunMethod ("setLayoutDirection",Array(jos.GetField ("LAYOUT_DIRECTION_RTL")))
		End If
		
	Catch
		Log(LastException)
	End Try
	
End Sub

 

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

در 15 دقیقه قبل، Salar82 گفته است :

سلام

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


	Dim j,jo As JavaObject
	jo.InitializeStatic("android.view.View")
	If j.InitializeStatic("android.os.Build$VERSION").GetField("SDK_INT") > 16 Then
		j.InitializeContext.RunMethodJO("getWindow",Null).RunMethodJO("getDecorView",Null) _
		.RunMethod("setLayoutDirection",Array(jo.GetField("LAYOUT_DIRECTION_RTL")))
	End If

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

برای اینکه فقط ویوی مد نظر شما راستچین شه از ساب زیر استفاده کنید:


Sub ForceRtlSupported4View(View As View)
	Try
		Dim jA,jos As JavaObject
		jos.InitializeStatic  ("android.view.View")
		If jA.InitializeStatic  ("android.os.Build$VERSION").GetField ("SDK_INT") > 16 Then
			jA = View
			jA.RunMethod ("setLayoutDirection",Array(jos.GetField ("LAYOUT_DIRECTION_RTL")))
		End If
		
	Catch
		Log(LastException)
	End Try
	
End Sub

 

ویو رو جا چی بنویسم

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

شما این ساب رو به اکتیویتیتون اضاف می کنید و بعد به صورت زیر داخل اکتیویتی کریت، از اون استفاده می کنید:

ForceRtlSupported4View(نام ویو)

 

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

در 16 دقیقه قبل، Salar82 گفته است :

شما این ساب رو به اکتیویتیتون اضاف می کنید و بعد به صورت زیر داخل اکتیویتی کریت، از اون استفاده می کنید:


ForceRtlSupported4View(نام ویو)

 

کار نکرد متاسفانه

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

بجای اون کد، این رو بنویسید:

SetApplicationAttribute(android:supportsRtl, "True")

 

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

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

من الآن داره تو پروژم ازش استفاده می کنم، هیچ خطایی نداره.

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

میشه نمونه کد initialize کردن تب لایوت و ویوپیجرتون رو بذارید

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

در 13 ساعت قبل، Salar82 گفته است :

میشه نمونه کد initialize کردن تب لایوت و ویوپیجرتون رو بذارید


	ahpc.Initialize
	
	
	p_home.Initialize("")
	p_home.LoadLayout("")
	
	p_nema.Initialize("")
	p_nema.LoadLayout("")
	
	p_picture.Initialize("")
	p_picture.LoadLayout("")
	
	p_nava.Initialize("")
	p_nava.LoadLayout("")
	
	p_speech.Initialize("")
	p_speech.LoadLayout("")
	
	p_live.Initialize("")
	p_live.LoadLayout("")
	
	ahpc.AddPageAt(p_home,"",0)
	ahpc.AddPageAt(p_picture,"",1)
	ahpc.AddPageAt(p_nava,"",2)
	ahpc.AddPageAt(p_speech,"",3)
	ahpc.AddPageAt(p_nema,"",4)
	ahpc.AddPageAt(p_live,"",5)
	
	
	AHViewPager_home.PageContainer=ahpc
	DSTabLayout_home.SetViewPager(AHViewPager_home)
	DSTabLayout_home.Color=Colors.rgb(125,0,0)
	
	Dim xml As XmlLayoutBuilder
	DSTabLayout_home.SetTabIcon(0,xml.GetDrawable("ic_information_outline"))
	DSTabLayout_home.SetTabIcon(1,xml.GetDrawable("ic_lock_open"))
	DSTabLayout_home.SetTabIcon(2,xml.GetDrawable("ic_camera"))
	
	DSTabLayout_home.SetTabTextColors(Colors.White,Colors.RGB(0,21,72))
	
	
	

این کد من 
فقط هیچکدام رو اینشیالایز نکردم

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

بجای AddPageAt از AddPage استفاده کنید.

 

برای اینکه مشکلتون حل بشه، تب لایوت رو چپ چین کنید:

Public Sub ForceLtrSupported4View(View As View)
	Try
		Dim jA,jos As JavaObject
		jos.InitializeStatic  ("android.view.View")
		If jA.InitializeStatic  ("android.os.Build$VERSION").GetField ("SDK_INT") > 16 Then
			jA = View
			jA.RunMethod ("setLayoutDirection",Array(jos.GetField ("LAYOUT_DIRECTION_LTR")))
		End If
	Catch
		Log(LastException)
	End Try
End Sub

 

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

اگه چپ چین کنم کدی هست که تب رو ست کنه رو آخر

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

منظورتون رو متوجه نمیشم.

 

من تو سایت مرجع نگاه کردم اونجا پیشنهاد کرده بودن بجای استفاده از viewpager و tablayout، از tabstrip استفاده کنید:

https://www.b4x.com/android/forum/threads/tabstripviewpager-better-viewpager.63975/

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

بایگانی شده

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

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

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