اطلاعیه

کاربر گرامی

به انجمن برنامه نویسی AnswerCenter.ir خوش آمدید

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


4 ارسال در این موضوع قرار دارد

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

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


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

سلام خدمت شما دوست عزیز. برای اینکه حالت صفحه موقع چرخیدن حفظ بشه باید کد زیر رو به اکتیویتیتون اضافه کنید از طریق منیفست

SetActivityAttribute(Main, android:configChanges, "orientation|screenSize|keyboardHidden")

به جای main اکتیوتی خودتون رو بزارید. و اما برای اینکه طول و عرض وب ویو موقع چرخیدن حفظ شه باید از کتابخونه imei و javaobject کمک بگیرید. قطعه کد زیر رو براتون قرار میدم شما مطابق نیازتون ازش استفاده کنید.

Sub Globals
	Private ime1 As IME
	Private WebView1 As WebView
	Private ActivityParent As JavaObject
End Sub

Sub Activity_Create(FirstTime As Boolean)
	WebView1.Initialize("wb")
	Activity.AddView(WebView1, 0, 0, 100%x, 100%y)
	ime1.Initialize("ime1")
	ime1.AddHeightChangedEvent
	WebView1.LoadUrl("http://www.google.com")
	Dim jo As JavaObject = Activity
	jo.RunMethodJO("getContext", Null).RunMethodJO("getWindow", Null).RunMethod("setSoftInputMode", _
     Array As Object(0x20))
	ActivityParent = jo.RunMethodJO("getParent", Null)
End Sub
Sub IME1_HeightChanged (NewHeight As Int, OldHeight As Int)
	CallSubDelayed(Me, "AfterChange")
End Sub

Sub AfterChange
	Dim ajo As Panel = Activity
	Dim width As Int = ActivityParent.RunMethod("getMeasuredWidth", Null)
	Dim height As Int = ActivityParent.RunMethod("getMeasuredHeight", Null)
	If width = 0 Or height = 0 Then Return
	ajo.Width = width 'update the "activity" width and height
	ajo.Height = height
	WebView1.Width = width
	WebView1.Height = height
End Sub

Sub Activity_Resume
	AfterChange
End Sub

 

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


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
در در 1397/07/27, 10:46:14، محمدرضا شاهپیری گفته است :

سلام خدمت شما دوست عزیز. برای اینکه حالت صفحه موقع چرخیدن حفظ بشه باید کد زیر رو به اکتیویتیتون اضافه کنید از طریق منیفست


SetActivityAttribute(Main, android:configChanges, "orientation|screenSize")

به جای main اکتیوتی خودتون رو بزارید. و اما برای اینکه طول و عرض وب ویو موقع چرخیدن حفظ شه باید از کتابخونه imei و javaobject کمک بگیرید. قطعه کد زیر رو براتون قرار میدم شما مطابق نیازتون ازش استفاده کنید.


Sub Globals
	Private ime1 As IME
	Private WebView1 As WebView
	Private ActivityParent As JavaObject
End Sub

Sub Activity_Create(FirstTime As Boolean)
	WebView1.Initialize("wb")
	Activity.AddView(WebView1, 0, 0, 100%x, 100%y)
	ime1.Initialize("ime1")
	ime1.AddHeightChangedEvent
	WebView1.LoadUrl("http://www.google.com")
	Dim jo As JavaObject = Activity
	jo.RunMethodJO("getContext", Null).RunMethodJO("getWindow", Null).RunMethod("setSoftInputMode", _
     Array As Object(0x20))
	ActivityParent = jo.RunMethodJO("getParent", Null)
End Sub
Sub IME1_HeightChanged (NewHeight As Int, OldHeight As Int)
	CallSubDelayed(Me, "AfterChange")
End Sub

Sub AfterChange
	Dim ajo As Panel = Activity
	Dim width As Int = ActivityParent.RunMethod("getMeasuredWidth", Null)
	Dim height As Int = ActivityParent.RunMethod("getMeasuredHeight", Null)
	If width = 0 Or height = 0 Then Return
	ajo.Width = width 'update the "activity" width and height
	ajo.Height = height
	WebView1.Width = width
	WebView1.Height = height
End Sub

Sub Activity_Resume
	AfterChange
End Sub

 

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

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


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

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

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

ایجاد یک حساب کاربری

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

ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

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

ورود به حساب کاربری