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

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


love

سوال

سلام خسته نباشید

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

Dim im As ImageView
im = ListView1.TwoLinesAndBitmap.ImageView
im.Left = Activity.Width - im.Width -9%x
im.Width=50dip
im.Height=60dip
Dim a As Label
a =ListView1.TwoLinesAndBitmap.Label
ListView1.TwoLinesAndBitmap.ItemHeight=80dip
a.Gravity=Gravity.RIGHT
a.Left=a.Left - 10%x

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

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

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

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

موفق باشید

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

سلام خسته نباشید

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

Dim im As ImageView
im = ListView1.TwoLinesAndBitmap.ImageView
im.Left = Activity.Width - im.Width -9%x
im.Width=50dip
im.Height=60dip
Dim a As Label
a =ListView1.TwoLinesAndBitmap.Label
ListView1.TwoLinesAndBitmap.ItemHeight=80dip
a.Gravity=Gravity.RIGHT
a.Left=a.Left - 10%x

فک می کنم جای خط کد ها رو عوض کنی یه اتفاقایی بیافته.

Dim im As ImageView
im = ListView1.TwoLinesAndBitmap.ImageView
im.Width=50dip
im.Height=60dip
im.Left = Activity.Width - im.Width -9%x
ListView1.TwoLinesAndBitmap.ImageView = im
Dim a As Label
a = ListView1.TwoLinesAndBitmap.Label
ListView1.TwoLinesAndBitmap.ItemHeight=80dip
a.Gravity=Gravity.RIGHT
a.Left=a.Left - 10%x
ListView1.TwoLinesAndBitmap.Label = a

اینجوری یه امتحانی بکن برای به هم نخوردن اندازه فونت لیست ویو هم یه نگاه به اینجا بنداز

http://answercenter.ir/thread612.html#post3125

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

درود

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

یه همچین چیزی:

if activity.width = 600 then a.Left=a.Left - 14%x

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

ممنون

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

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

ممنون

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

دوست خوبم

در کل دو راه معمول برای فهرست وار کردن مطالب وجود داره 1-استفاده از لیست ویو 2-کار با اسکرول ویو

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

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

اگر مشکلی بود بازم درخدمتم :)

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

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

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

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

ماهیت اصلی اون شرطی که گفتم اینه که میاد چک میکنه اگر عرض صفحه نمایش 340dip بود فلان کار رو انجام میده و اگر 600dip بود یه کار دیگه رو انجام میده به همین ترتیب ...

این کد:

If Activity.Width <360 Then

    [b] a.Left=a.Left - 10%x[/b]

Else If Activity.Width < 450 Then

   [b] a.Left=a.Left - 12%x[/b]

Else If Activity.Width < 690 Then

   [b] a.Left=a.Left - 14%x[/b]

Else If Activity.Width < 900 Then

   [b] a.Left=a.Left - 16%x[/b]

End If

و فقط کافیه با مقدار a.Left بازی کنی و اون 10% و 12 و 14 و .. رو با خطا و آزمون تغییر بدی تا در نهایت لیبل لیست ویو ترازبندی بشه

حلله؟

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

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

ممنون

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

بزرگترین ابعادی که شخصا در نظر میگیرمش از 900بالاتر نمیره یعنی تعدا کاربرای با تبلت 13اینچی خیلی کمتر از اون چیزی هستن که بخوای واسش کد بنویسی

324 سایز صفحه معمولی مثل g610 هواوی هست، سایز 600برای تبلت 7اینچی و سایز 800 هم برای تبلت 10 اینچ به کار میره

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

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

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

اقا شرمنده یه سوال دیگه پیش اومد من اون تیکه کد شرط رو زدم درست شد دو تا گوشی داشتم که عرض اونها کمتر از 600 بود درست شد فقط نمیدونم برای کمتر از 450 و بزرگتر از 600 باید چند درصد با هم تفاوت داشته باشند اخه گوشی به سایز اونها ندارم که تست کنم

Else If Activity.Width < 690 Then

   a.Left=a.Left - 42%x

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

میشه جواب بدید شبیه سازی هست که بتونم مدل گوشی بهش بدم طبق صفجه نمایش اون گوشی به من نشون بده؟

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

بایگانی شده

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

مهمان
این موضوع برای عدم ارسال قفل گردیده است.
  • کاربران آنلاین در این صفحه   0 کاربر

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