اطلاعیه

کاربر گرامی

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

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


امین مهدی نژاد

گام نوزدهم-تنظیم پسزمینه ویوها

پست های پیشنهاد شده

هنگام کدنویسی احتمال تغییر پسزمینه ویوها وجود داره

برای اینکار چهار روش زیر وجود داره که به همراه مثال توضیح داده میشه

BitmapDrawable
ColorDrawable
GradientDrawable
StateListDrawable

1-تغییر پس زمینه با عکس دلخواه

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

Dim bd As BitmapDrawable
bd.Initialize(LoadBitmap(File.DirAssets, "SomeImage.png"))
bd.Gravity = Gravity.FILL
Activity.Background = bd

خاصیت Gravity امکان تنظیم موقعیت تصویر در ویو و یا هماهنگ کردن خودش با اندازه ویو به کار می رود.

در اینجا کل ویو رو پوشش می دهد.

2-تغییر پس زمینه با رنگ دلخواه

ColorDrawable هم امکان تنظیم پسزمینه با رنگی دلخواه رو فراهم میکنه. مثلا:

Dim cd As ColorDrawable
cd.Initialize(Colors.Green, 5dip)
Button1.Background = cd

پارامتر دوم در خط دوم کد بالا یعنی 5dip برای تنظیم میزان گرد بودن گوشه های ویو به کار میره. با این کار می تونین ویو رو زیباتر کنید.

3-تغییر پس زمینه با ترکیب چند رنگ

در مثال GradientDrawable زیر:

Dim Gradient1 As GradientDrawable
Dim Clrs(2) As Int
Clrs(0) = Colors.RGB(72,200,255)
Clrs(1) = Colors.RGB(206,240,255)
Gradient1.Initialize("TOP_BOTTOM", Clrs)
Activity.Background=Gradient1

اکتیویتی به رنگ آسمان درمیاد(افق روشنتر از بقیه)

4-تنظیم بکگراند برای انواع حالات مختلف ویو

StateListDrawable به ما کمک میکنه تا بتونیم پسزمینه رو بر اساس خواصی که ویوها دارند تغیر بدیم.

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

State_Checked As Int
'تیک خورده
State_Disabled As Int
'فعال نبودن
State_Enabled As Int
'فعال بودن
State_Focused As Int
'تعلق تمرکز و فوکوس
State_Pressed As Int
'فشرده شده
State_Selected As Int
'انتخاب شده
State_Unchecked As Int
'تیک نخورده

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

مثال:

 	Dim tb As ToggleButton
    tb.Initialize("") 'no events will be caught
    Dim checked, unchecked As ColorDrawable
    checked.Initialize(Colors.Green, 10dip)
    unchecked.Initialize(Colors.Red, 10dip)

    Dim sld As StateListDrawable
    sld.Initialize
    sld.AddState(sld.State_Checked, checked)
    sld.AddState(sld.State_Unchecked, unchecked)
    tb.Background = sld
    tb.Checked = True
    tb.TextColor = Colors.Blue
    tb.TextSize = 20
    tb.Typeface = Typeface.DEFAULT_BOLD
    Activity.AddView(tb, 100dip, 100dip, 100dip, 100dip)

در مثال بالا رنگ ویو بعد از تیک خوردن سبز و با لغو تیک به قرمز تغیر میکنه.

امیدوارم این آموزش براتون مفید بوده باشه.

«موفق باشید.»

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


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

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

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

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

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

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

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

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

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


درباره ما

 گروه برنامه نویسی انسور سنتر کار خود را به صورت رسمی از سال 1392 تحت عنوان تیم برنامه نویسی بیسیک4اندروید ایران آغاز کرد و در کمتر از یک سال به پرمخاطب ترین .و محبوب ترین انجمن برنامه نویسی بیسیک4اندروید ایرانی تبدیل شد و اکنون به درخواست بسیاری از کاربران، انجمن زمینه فعالیت خود را گسترش داده است

 

تماس با ما.

  •         بلوچستان، ایرانشهر، بلوار مکران، میدان بسیج، جنب حوزه علمیه حقانیه. کد پستی: 9917914113
  •         info@answercenter.ir
  •         09338810122