بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ

عوض کردن بگ کراند یک لینیر لیوت مشکل حل شد

مدیریت گفتگو
peyman1104 11 سال پیش
آخرین تغییر: 11 سال پیش

من یه LinearLayout دارم که داخل اون یه تکست ویو هست ویه ایمج ویوهست که وقتی رو تکست ویو کلیک می کنم می خوام بکگراند LinearLayout عوض بشه یعنی طبق عکس پایین رنگ فیروزای عوض بشه به این صورت وقتی کلیک می کنم shape اون یه لحظه عوض بشه و دوباره به حالت قبل بشه در ضمن من در قسمت بکگراند LinearLayoutتو فایل xml از یه shape استفاده کردم و کدشو هم با عکس میزارم

 t1.setOnClickListener(new OnClickListener() { کد کلیک کردن رو تکست ویو هست برای عوض شدن عکس لینیر لیوت به صورت لحظهای چه کار کنم

@Override
public void onClick(View arg0) {
Intent intent = new Intent(MainActivity.this,seasones.class);
MainActivity.this.startActivity(intent);


اینم کد shapeکه استفاده کردم
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >

<corners android:radius="16dip"/>
<padding android:bottom="8dip"
android:left="8dip"
android:right="8dip"
android:top="8dip"/>
<gradient android:startColor="#3f00ff4f"
android:centerColor="#1f00ff4f"
android:endColor="#3f00ff4f"
android:angle="90"

/>

<stroke
android:width="2dip"
android:color="#ff003030"/>

</shape>

نظرات

Hossein Lamei Ramandi 11 سال پیش
دوست عزیز توی آموزش های استاد اینکاری که شما میخواید انجام بدید (تغییر رنگ هنگام کیلیک)هست
peyman1104 11 سال پیش
کدوم قسمت از اموزشها هست
peyman1104 11 سال پیش
کسی از دوستان میشه جواب منو بده ممنون
peyman1104 11 سال پیش
کسی از دوستان میشه جواب منو بده ممنون
peyman1104 11 سال پیش
چرا کسی به این سوال من جواب نمیده

پاسخ‌ها 3

hamcalas 11 سال پیش

اول از همه به  linearlayout ای دی اختصاص بدید و در کلاس جاوا مثل سایر عناصر مثل دکمه و.... تعریفش کنید

LinearLayout layout=()findViewsById 

 LinearLayout layout=(LinearLayout)findViewsById(R.id.layoutid);
بعد موقع کلیک بگو
Layout .setBacgrund.....

باگوشی نوشتم کدها را  اصلاح کنید.

 

 

نظرات

peyman1104 11 سال پیش

ممنون اقای hamcalas ببینید مشکل من اینه توعکس زیر فرستادم می خوام وقتی رو تکس ویو داخل LinearLayout  که کلیک کنم رنگ LinearLayout تغیر کنه به صوت یه چشمک زدن و دوباره به حالت اول بره در  ضمن من در قسمت بکگراند LinearLayoutتو فایل xml از یه shape استفاده کردم و کدشو هم با عکس اون بالا گذاشتم  تو کد زیر وقتی رو تکست ویو کلیک می کنم رنگ LinearLayout  عوض میشه ولی دیگه به حالت اول برنمیگرده

نظرات

SaLaH KuRD 11 سال پیش
سلام برای اینکار باید از Selector ها استفاده کنید لینک
Criss 11 سال پیش
آموزش استفاده از Selector ها فکر کنم در بخش استفاده از NinePach توی آموزش های استاد وجود داره
peyman1104 11 سال پیش
من بالا هم گفتم تو قسمت بکگرند LinearLayout از یه shape استفاده کردم که عکس اونو تو پست اولم گذاشتم حالا می خوام وقتی رو تکس ویوای که تواین لینیر لایوت گذاشتم رنگ این shape که بگراند لینیر لیوت هست یه چشمک بزنه مثل selector باشه چکار کنم
Criss 11 سال پیش
لینک http://answers.uncox.com/android/question/1864/ لینک http://answers.uncox.com/android/question/11089 لینک http://answers.uncox.com/android/question/4860
peyman1104 11 سال پیش
ممنون از دوستان که جواب می دید من می دونم selector این کار رو انجام میده استادم تو اموزشهاش گفته اما من قسمت بکگراند لینیر لیوت رو با یه فایل shape پر کردم الان این فایل selectorرو به چی بدم
peyman1104 11 سال پیش
منظور من اینه من از یه selector برا یه مثلا LinearLayout استفاده کردم حالا یه دکمه دارم وقتی رو دکمه کلیک کنم مثل این باشه که رو LinearLayout کلیک کرده باشم یعنی یک بار فایل selector برا LinearLayout اجرا بشه الان منظور خودمو تونستم برسونم ممنون
Criss 11 سال پیش
من تابحال از Selector ها استفاده نکردم < اما کافیه کد های مربوط به Shape رو به Selector اضافه کنید < طبق چیزی که اینجا گفته شده < لینک
peyman1104 11 سال پیش
منظور من اینه من از یه selector برا یه مثلا LinearLayout استفاده کردم حالا یه دکمه دارم وقتی رو دکمه کلیک کنم مثل این باشه که رو LinearLayout کلیک کرده باشم یعنی یک بار فایل selector برا LinearLayout اجرا بشه الان منظور خودمو تونستم برسونم ممنون
peyman1104 11 سال پیش

ممنون از تمام دوستان مشکل من حل شد من ابتدا از یه selector استفاده کردم که تو اون از 2 تا فایل shape استفاده کردم و تو قسمت کلیک دکمه کد زیرو زدم درست شد

 				Layout00.setPressed(true);

نظرات


پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .