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

عمودی و افقی شدن گوشی


alirezakazemizaroomi

سوال

سلام 

میخواستم یه شرط بذارم که اگه حالت گوشی افقی بود مثلا یه کاری بکنه و اگه حالت گوشی عمودی بود یه کار دیگه بکنه چجوری این شرطو بنویسم؟ 

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

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

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

سورستون رو پیوست کنید ببینم....

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

سلام مجدد.


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


 


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



Dim ic As Intent
ic.Initialize(ic.ACTION_VIEW, "LINK")
ic.SetType("video/*")
ic.WrapAsIntentChooser("یکی از پلیر ها را انتخاب کنید:")
StartActivity(ic)

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


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


 


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


یکی از مشکلات ویدیو ویو اینه که،فیلم رو تمام صفحه نمیکنه و تو گوشی های بزرگ تر میندازه اون گوشی ، که برای حلش یه کتابخونه داره که تو سایت مرجع هست. :tashvigh:


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


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

سورستون رو پیوست کنید ببینم....

سورس:

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

 

سلام مجدد.

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

 

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

Dim ic As Intent
ic.Initialize(ic.ACTION_VIEW, "LINK")
ic.SetType("video/*")
ic.WrapAsIntentChooser("یکی از پلیر ها را انتخاب کنید:")
StartActivity(ic)

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

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

 

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

یکی از مشکلات ویدیو ویو اینه که،فیلم رو تمام صفحه نمیکنه و تو گوشی های بزرگ تر میندازه اون گوشی ، که برای حلش یه کتابخونه داره که تو سایت مرجع هست. :tashvigh:

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

 

 

 

خوب در قسمت تنظیمات پروژه حالت رو فقط به portrait تغییر بدید ...

 

 

 

ممنون پس من یه سورس دیگه میذارم اینو یه کاریش کن وقتی رو دکمه کیلید کرد تو یه اکتیویتی دیگه با ویدیو ویو پخش کنه , تواین سورس تو همون اکتیویتی پخش میکنه یه کاریش کن وقتی روش کلید کردیم بره تویه اکتیویتی دیگه پخش کنه؟

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

اکتیویتی دیگه ای نیاز نیست که.

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

Dim ic As Intent
ic.Initialize(ic.ACTION_VIEW, "LINK")
ic.SetType("video/*")
ic.WrapAsIntentChooser("یکی از پلیر ها را انتخاب کنید:")
StartActivity(ic)
لینک ارسال
به اشتراک گذاری در سایت های دیگر

 

اکتیویتی دیگه ای نیاز نیست که.

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

Dim ic As Intent
ic.Initialize(ic.ACTION_VIEW, "LINK")
ic.SetType("video/*")
ic.WrapAsIntentChooser("یکی از پلیر ها را انتخاب کنید:")
StartActivity(ic)

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

 

unknown.gif  zaker.rar   565.2K   0 تعداد دریافت ها

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

من یه VideoView تو برنامم تعریف کردم مشکلم اینجاست که وقتی فیلمو پخش میکنه اگه حالت گوشی رو مثلا از حالت عمودی به افقی تغییر بدیم فیلم از اول پخش میشه من میخوام یه کاری کنم که اگه حالت گوشی رو تغییر دادیم از ادامه اش پخش کنه؟ با روش آقا حامد نمیدونم چطوری درستش کنم؟

آقا این کدام یکی لطفا جواب بده:


Sub Process_Globals
Dim time As Timer
End Sub


Sub Globals
Dim pos As Int
Dim vw As VideoView
Dim dw As PhoneIntents
Private Panel1 As Panel
End Sub


Sub Activity_Create(FirstTime As Boolean)
time.Initialize("time",1000)
Activity.LoadLayout("ll")
vw.Initialize("vw")
If Activity.Height<Activity.Width Then
vw.Position=pos
Dim pd As Phone
pd.SetScreenOrientation(0)
End If
Activity.AddView(vw,1%x, 1%y, 99%x, 60%y)
  vw.MediaControllerEnabled=True   
End Sub


Sub Activity_Resume

End Sub



Sub Activity_Pause (UserClosed As Boolean)

End Sub




''''کد پخش آنلاین از آپارات
Sub Button1_Click
vw.LoadVideo("http","http://hn12.asset.aparat.com/aparat-video/7551d1524b282973bed3239f0625c0ed1959854__31339.mp4")
time.Enabled=True
ToastMessageShow("درحال بارگزاری فیلم",True)
vw.Play
End Sub


Sub time_tick
pos=vw.Position
End Sub


''''کد دانلود از آپارات
Sub Button2_Click
StartActivity(dw.OpenBrowser("http://hn12.asset.aparat.com/aparat-video/7551d1524b282973bed3239f0625c0ed1959854__31339.mp4"))
End Sub


Sub Button3_Click
Msgbox("created by shahab.msb for basic4android Forum","basic4android.org")
End 
Sub

 

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

دوست عزیز بنده که تو همون تاپیک جوابتون رو دادم.

همون رو پیاده سازی کنید رو این دیگه.

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

داداش درست شد اینم سورسش:


unknown.gif  zaker1.rar   581.93K   0 تعداد دریافت ها


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

ایطوری تست کن

if activity.height > activity.with then
لینک ارسال
به اشتراک گذاری در سایت های دیگر

ممنون

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

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

کار کرد برادر

تست کردم جواب داد

	If Activity.Width < Activity.Height Then
		ToastMessageShow("portrait",False)
	Else
		ToastMessageShow("landscape",False)
	End If

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

Dim Accelerometer As PhoneAccelerometer

استفاده کنی

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

دوست عزیز بنده که تو همون تاپیک جوابتون رو دادم.

همون رو پیاده سازی کنید رو این دیگه.

 

این کدی که شما گفتین قرار دادم ولی جواب نداد؛اینهم کدام:


Sub Process_Globals
Dim time As Timer
End Sub




Sub Globals
Dim pp As PhoneAccelerometer
Dim pos As Int
Dim vw As VideoView
Dim dw As PhoneIntents
Private Panel1 As Panel
End Sub




Sub Activity_Create(FirstTime As Boolean)
time.Initialize("time",1000)
Activity.LoadLayout("ll")
vw.Initialize("vw")
pp.StartListening("pp")
Activity.AddView(vw,1%x, 1%y, 99%x, 60%y)
vw.MediaControllerEnabled=True   
End Sub




Sub Activity_Resume


End Sub




Sub Activity_Pause (UserClosed As Boolean)


End Sub




Sub time_tick
pos=vw.Position
End Sub


''''کد پخش آنلاین از آپارات
Sub Button1_Click
vw.LoadVideo("http","http://hn12.asset.aparat.com/aparat-video/7551d1524b282973bed3239f0625c0ed1959854__31339.mp4")
time.Enabled=True
ToastMessageShow("درحال بارگزاری فیلم",True)
vw.Play
End Sub




Sub pp_AccelerometerChanged (X As Float, Y As Float, Z As Float)
Dim xx As Int=X
Dim yy As Int=Y
If xx<4 Then
ToastMessageShow("عمودی شد",False)
Else If yy<4 Then
vw.Position=pos
End If
End Sub
لینک ارسال
به اشتراک گذاری در سایت های دیگر

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

موفق باشید

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

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

موفق باشید

ممنون

فقط میتونی روش آقا حامدو توضیح بدی؟

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

ممنون

فقط میتونی روش آقا حامدو توضیح بدی؟

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

و اگر بر عکس یعنی افقی است .

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

ممنون ازهمه

 من یه VideoView تو برنامم تعریف کردم مشکلم اینجاست که وقتی فیلمو پخش میکنه اگه حالت گوشی رو مثلا از حالت عمودی به افقی تغییر بدیم فیلم از اول پخش میشه من میخوام یه کاری کنم که اگه حالت گوشی رو تغییر دادیم از ادامه اش پخش کنه؟ با روش آقا حامد نمیدونم چطوری درستش کنم؟

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

بایگانی شده

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

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

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