Salar82 919 ارسال شده در 24 خرداد، ۱۳۹۹ اشتراک گذاری ارسال شده در 24 خرداد، ۱۳۹۹ سلام به همه دوستان من با کد زیر میام تو رویداد HeightChanged کتابخونه IME، با باز و بسته شدن کیبورد، ارتفاع اسکرول ویو رو با کد زیر تغییر میدم. اما مشکل اینه که ارتفاع اسکرول ویو تغییر نمیکنه: Private Sub IME_HeightChanged (NewHeight As Int, OldHeight As Int) If NewHeight - OldHeight < 0 Then ' Open Dim height As Int = SVR.Panel.Height + NewHeight SVR.Panel.Height = height Else SVR.Panel.Height = Activity.Height End If End Sub ممنون از راهنماییتون لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
Salar82 919 ارسال شده در 24 خرداد، ۱۳۹۹ سازنده اشتراک گذاری ارسال شده در 24 خرداد، ۱۳۹۹ در ۱ ساعت قبل، trzm1989 گفته است : من اینجوری یبار این کارو انجام دادم برای ساخت صفحه چت کد مانیفست: SetActivityAttribute(act_Messages, android:windowSoftInputMode, adjustResize|stateHidden) LV هم با ریسایکلرویو IME.Initialize("IME") IME.AddHeightChangedEvent Height = 100%y-56dip-10.5%y LV.Initializer("LV").ListView.StackFromEnd.Build LV.Ripple.Alpha(0).Color(Colors.Transparent) LV.Clickable = False Activity.AddView(LV,0,56dip,100%x,Height) Pan.Initialize("") Activity.AddView(Pan,0,90%y,100%x,10%y) Pan.Color = 0xFFFAFAFA lblPM.Initialize("lblPM") Dim CD As ColorDrawable CD.Initialize(0xFFFAFAFA,1dip) lblPM.Background = CD lblPM.Hint = "پیام خود را بنویسید" lblPM.TextSize = 12 lblPM.Typeface = IranSans Pan.AddView(lblPM,5%x,1%y,82%x,8%y) sendBTN.Initialize("sendBTN") sendBTN.Bitmap = LoadBitmap(File.DirAssets,"send.png") sendBTN.Gravity = Gravity.FILL Pan.AddView(sendBTN,89%x,(10%y-7%x)/2,7%x,7%x) Sub IME_HeightChanged(NewHeight As Int, OldHeight As Int) Pan.Top = NewHeight - Pan.Height LV.Height = NewHeight - 56dip-10%y End Sub مشکل حل شد برای اینکار لازم نیست InnerHeight رو تغییر بدیم و فقط باید ارتفاع خود اسکرول ویو رو تغییر داد و لازم هم نیست که بعد از تغییر ارتفاع ویو، دستی به InnerHeight بزنیم چون وقتی InnerHeight رو برابر 750dip میذاریم، چه ارتفاع %50 باشه و چه %100 ، InnerHeight همون 750dip میمونه و فرقی به حالش نداره. من این پیام رو به عنوان بهترین پاسخ انتخاب می کنم تا بقیه دوستانی که مشکل دارن، بدونن چیکار کنن. بابت کمک در حل این مشکل از @ محمدرضا شاهپیری و @ trzm1989 بسیار متشکرم در 14 دقیقه قبل، محمدرضا شاهپیری گفته است : شما نیاز نیست دستی چیزی رو تغییر بدین. کافیه خاصیت android:windowSoftInputMode="adjustResize" رو برای اکتیویتیتون ست کنید. اتوماتیک هروقت کیبورد باز بشه ادیت تکست هم بالا میاد و زیر کیبورد نمیره من این راهو امتحان کردم ولی بدیش اینه که صفحه کامل اسکرول نمیشه و تا جایی اسکرول میشه که EditText نمایان بشه و نه بیشتر؛ که این مورد پسند بنده نبود تشکر لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
Salar82 919 ارسال شده در 24 خرداد، ۱۳۹۹ سازنده اشتراک گذاری ارسال شده در 24 خرداد، ۱۳۹۹ قاعدتا باید وقتی کیبورد باز شد، ارتفاع به SVR.Panel.Height + NewHeight تغییر پیدا کنه. اما چیزی که الان متوجه شدم اینه که: وقتی کیبورد باز میشه اتفاقی نمیفته و وقتی بسته میشه، تازه کدهای مربوط به باز شدن عمل میکنه و ارتفاع رو به SVR.Panel.Height + NewHeight تغییر میده. وقتی هم برای سری دوم کیبورد باز میشه، کدهای مربوط بسته شدن کیبورد عمل میکنه. اصلا نمیتونم درکش کنم؛ رفته رو اعصابم لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
trzm1989 11 ارسال شده در 24 خرداد، ۱۳۹۹ اشتراک گذاری ارسال شده در 24 خرداد، ۱۳۹۹ من اینجوری یبار این کارو انجام دادم برای ساخت صفحه چت کد مانیفست: SetActivityAttribute(act_Messages, android:windowSoftInputMode, adjustResize|stateHidden) LV هم با ریسایکلرویو IME.Initialize("IME") IME.AddHeightChangedEvent Height = 100%y-56dip-10.5%y LV.Initializer("LV").ListView.StackFromEnd.Build LV.Ripple.Alpha(0).Color(Colors.Transparent) LV.Clickable = False Activity.AddView(LV,0,56dip,100%x,Height) Pan.Initialize("") Activity.AddView(Pan,0,90%y,100%x,10%y) Pan.Color = 0xFFFAFAFA lblPM.Initialize("lblPM") Dim CD As ColorDrawable CD.Initialize(0xFFFAFAFA,1dip) lblPM.Background = CD lblPM.Hint = "پیام خود را بنویسید" lblPM.TextSize = 12 lblPM.Typeface = IranSans Pan.AddView(lblPM,5%x,1%y,82%x,8%y) sendBTN.Initialize("sendBTN") sendBTN.Bitmap = LoadBitmap(File.DirAssets,"send.png") sendBTN.Gravity = Gravity.FILL Pan.AddView(sendBTN,89%x,(10%y-7%x)/2,7%x,7%x) Sub IME_HeightChanged(NewHeight As Int, OldHeight As Int) Pan.Top = NewHeight - Pan.Height LV.Height = NewHeight - 56dip-10%y End Sub لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
Salar82 919 ارسال شده در 24 خرداد، ۱۳۹۹ سازنده اشتراک گذاری ارسال شده در 24 خرداد، ۱۳۹۹ ممنون بابت پاسخگوییتون ولی من میخوام کل صفحه اسکرول بشه نه اینکه تاپ یک ویو رو تغییر بدم و الان مشکلم با خود اسکرول ویو هست که ارتفاعش اشتباه تنظیم میشه. کد شما کاملا درسته و هیچ مشکلی نداره لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
محمدرضا شاهپیری 5,583 ارسال شده در 24 خرداد، ۱۳۹۹ اشتراک گذاری ارسال شده در 24 خرداد، ۱۳۹۹ در 3 ساعت قبل، Salar82 گفته است : سلام به همه دوستان من با کد زیر میام تو رویداد HeightChanged کتابخونه IME، با باز و بسته شدن کیبورد، ارتفاع اسکرول ویو رو با کد زیر تغییر میدم. اما مشکل اینه که ارتفاع اسکرول ویو تغییر نمیکنه: Private Sub IME_HeightChanged (NewHeight As Int, OldHeight As Int) If NewHeight - OldHeight < 0 Then ' Open Dim height As Int = SVR.Panel.Height + NewHeight SVR.Panel.Height = height Else SVR.Panel.Height = Activity.Height End If End Sub ممنون از راهنماییتون قصدتون دقیقا چیه دوست عزیز؟چرا همچین کاری میخواین بکنین؟ لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
Salar82 919 ارسال شده در 24 خرداد، ۱۳۹۹ سازنده اشتراک گذاری ارسال شده در 24 خرداد، ۱۳۹۹ می خوام ادیت تکست ها زیر کیبورد نباشن و نمیخوام هم که پوزیشن هر کدوم رو تغییر بدم چون هم تعداد تکست ویو ها زیاده و هم یه دکمه پایین صفحه هست که میخوام با باز شدن کیبورد، اون هم پیدا باشه لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
trzm1989 11 ارسال شده در 24 خرداد، ۱۳۹۹ اشتراک گذاری ارسال شده در 24 خرداد، ۱۳۹۹ در 3 دقیقه قبل، Salar82 گفته است : می خوام ادیت تکست ها زیر کیبورد نباشن و نمیخوام هم که پوزیشن هر کدوم رو تغییر بدم چون هم تعداد تکست ویو ها زیاده و هم یه دکمه پایین صفحه هست که میخوام با باز شدن کیبورد، اون هم پیدا باشه خب همینطوره برام استاد تمام ویوهام توی پنله ولی لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
Salar82 919 ارسال شده در 24 خرداد، ۱۳۹۹ سازنده اشتراک گذاری ارسال شده در 24 خرداد، ۱۳۹۹ در 15 دقیقه قبل، trzm1989 گفته است : خب همینطوره برام استاد تمام ویوهام توی پنله ولی درسته ولی شما اومدین ارتفاع ریسایکلر رو کم کردین. حالا اگر من بیام ارتفاع ویو(اسکرول ویو) رو کمتر کنم، مجبور میشم InnerHeight رو افزایش بدم که باز میشه همین آش و همین کاسه و بازم تغییر نمیکنه. لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
محمدرضا شاهپیری 5,583 ارسال شده در 24 خرداد، ۱۳۹۹ اشتراک گذاری ارسال شده در 24 خرداد، ۱۳۹۹ در 38 دقیقه قبل، Salar82 گفته است : می خوام ادیت تکست ها زیر کیبورد نباشن و نمیخوام هم که پوزیشن هر کدوم رو تغییر بدم چون هم تعداد تکست ویو ها زیاده و هم یه دکمه پایین صفحه هست که میخوام با باز شدن کیبورد، اون هم پیدا باشه شما نیاز نیست دستی چیزی رو تغییر بدین. کافیه خاصیت android:windowSoftInputMode="adjustResize" رو برای اکتیویتیتون ست کنید. اتوماتیک هروقت کیبورد باز بشه ادیت تکست هم بالا میاد و زیر کیبورد نمیره لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
Radiomedia 36 ارسال شده در 26 خرداد، ۱۳۹۹ اشتراک گذاری ارسال شده در 26 خرداد، ۱۳۹۹ در در 24 خرداد 1399 در 17:27، Salar82 گفته است : سلام به همه دوستان من با کد زیر میام تو رویداد HeightChanged کتابخونه IME، با باز و بسته شدن کیبورد، ارتفاع اسکرول ویو رو با کد زیر تغییر میدم. اما مشکل اینه که ارتفاع اسکرول ویو تغییر نمیکنه: Private Sub IME_HeightChanged (NewHeight As Int, OldHeight As Int) If NewHeight - OldHeight < 0 Then ' Open Dim height As Int = SVR.Panel.Height + NewHeight SVR.Panel.Height = height Else SVR.Panel.Height = Activity.Height End If End Sub ممنون از راهنماییتون سلام. دوست عزیزم اتفاقا اینکار خیلی آسونیه و من بارها ازش اسفاده کردم. در منیفست: SetActivityAttribute(main, android:windowSoftInputMode, adjustResize|stateHidden) در Activity_Create: ime1.Initialize("ime1") ime1.AddHeightChangedEvent ایجاد ساب و تغییر ارتفاع خودکار : Sub ime1_HeightChanged(NewHeight As Int, OldHeight As Int) ScrollView1.Height = NewHeight End Sub در Activity_Pause (اگر خواستی اجباری نیست ) ime1.HideKeyboard اینم برای بازکردن کیبورد: که هرجایی که بخوای میذاریش، مثلا در Activity_Create: (خط زیر برای فعال شدن تکست هست، که خودکار باز شه) Sub txtSearch_FocusChanged (HasFocus As Boolean) If HasFocus = True Then ime1.ShowKeyboard(txtSearch) End If End Sub اصلا دیگه به هیچ چیزی نمیخواد دست بزنی که بهم بریزه. فقط اگر احیانا خواستی فیلتری برای تکست تعیین کنی و یا طول کاراکتر رو محدود کنی دو خط زیر : ime1.SetCustomFilter(txtSearch, txtSearch.INPUT_TYPE_NUMBERS, "0123456789.") ime1.SetLengthFilter(txtSearch , 10) ایشاله که جوابم بهترین باشه و به کارتون بیاد. خداقوت لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
Salar82 919 ارسال شده در 26 خرداد، ۱۳۹۹ سازنده اشتراک گذاری ارسال شده در 26 خرداد، ۱۳۹۹ خیلی ممنون دوست عزیز مشکلم حل شد لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
سوال
Salar82 919
سلام به همه دوستان
من با کد زیر میام تو رویداد HeightChanged کتابخونه IME، با باز و بسته شدن کیبورد، ارتفاع اسکرول ویو رو با کد زیر تغییر میدم. اما مشکل اینه که ارتفاع اسکرول ویو تغییر نمیکنه:
ممنون از راهنماییتون
لینک ارسال
به اشتراک گذاری در سایت های دیگر
11 پاسخ به این سوال تاکنون داده شده است
ارسالهای توصیه شده
بایگانی شده
این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.