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

مشکل رادیو گروپ به همراه چندین رادیو باتن در لیست ویو (حل شد)

مدیریت گفتگو
Mseif 12 سال پیش
آخرین تغییر: 9 سال پیش

سلام توی این پروژه که یه جور آزمون گیر هست من اومدم سوال ها رو به همراه گزینه ها توی لیست ویو لود کردم حالا وقتی روی یکی از گزینه های سوال یک کلیک میکنم ، گزینه یک سوال های دیگه هم زده میشه ... این مشکل هم توی آموزش استاد وجود داشت ولی اون یه جورایی با ماله من فرق داره ... از دوستان خواهش دارم که این پروژه رو نگاه کنن و گره ای از کار بنده بگشاین  لینک

نظرات

Mseif 12 سال پیش
همچنان منتظر یاری سبزتان هستیم
SaM MP 12 سال پیش
دقیقا متوجه نشدم منظورتون اینه که هر آیتم از لیست 4تا RadioButton داره؟
Mseif 12 سال پیش
من یه لیست ویو دارم که توی هر الوارش سوال به همراه 4 گزینه داره و این سوال ها تعدادشون معلوم نیست ممکنه 50 تا باشه یا بیشتر ... حالا واسه این که آیدی رادیو باتن ها با هم یکی نشه باید آیدیشون رو متفاوت کنم ...!!!
SaM MP 12 سال پیش
نه عزیزم اینکار لازم نیست فقط کافیه از اول برای هر کدام از 4باتن آیدی تعریف کنی، در متود fill از طریق گرفتن position مشخص میشه که کدام الوار کلیک شده (int position)
Mseif 12 سال پیش
من نیازی به کلیک شدن الوار ها ندارم و فقط می خوام خونده بشن و یکی شون انتخاب بشه
SaM MP 12 سال پیش
بخش دهم (کنترل لیست) رو نگاه کنید استاد توضیح دادن، هنوز کار با این مدل لیست رو یاد نگرفتید
Eminent 12 سال پیش
خب دوست من همونطور که شما از من بهترم میدونی الوارها در حال تغییر هستن همیشه پس id دینامیک معنی نداره! شما همونطور که دوستمون گفت به هرکدوم تو همون یدونه id بده و سپس تو متد fill با توجه به position میتونی با id هر Radio Button کنترلش کنی امیدوارم عصبانی نشی از اینکه پیشنهادات مشابه ان اما چاره ای نیس راهش همینه!
Mseif 12 سال پیش
دوستان لطفا اطلاعی در این زمینه دارین کمک کنید
طاهر 12 سال پیش
باید توی ادپتور متد کلیک شدن یا غیره رو تعریف کنی
Mseif 12 سال پیش
متد کلیک شدن برای رادیو باتن ها منظورتونه ؟؟ یعنی برای هر چهار تا رادیو متد کلیک شدن تعریف کنم بعد داخلشون چی بنویسم ؟
Mseif 12 سال پیش
دوستان لطفا کمک کنید
Mseif 12 سال پیش
چرا کسی کمک نمی کنه ... شدیدا کارم گیر کرده کل نت رو هم زیره رو کردم نتیجه ای یافت نشد
طاهر 12 سال پیش
شما کاری که قراره با تغییر رادیو باتن ها انجام بشه رو در داخل خود آداپتور تعریف کن
طاهر 12 سال پیش
البته اگه تکه کد قسمت مربوطه رو هم بزاری راحتتر میشه راهنمایی کرد
Mseif 12 سال پیش
ممنون طاهر جان .. بنده لینک پروژه رو گذاشتم و یه بار پروژه رو اجرا بگیرین متوجه مشکل من میشی
Mseif 12 سال پیش
واقعا کسی به این مشکل بر نخورده ؟؟
Mseif 12 سال پیش
دوستان کمک کنید
Mseif 12 سال پیش
کمک کنید
Ghost 12 سال پیش
به جان بچه ای که ندارم بلد نیستم وگرنه کمک میکردم!خخخخ
Ghost 12 سال پیش
داداش عزیز امیدوار ام مشکل ات به زودی حل شه!نا امید نشو
Mseif 12 سال پیش
4 روزه دگیرشم بخدا ....
Ghost 12 سال پیش
دیدم سوالت رو !این سوالت تقریبا مربوط میشه به بخش چند؟
Mseif 12 سال پیش
مربوط میشه به using list view
Ghost 12 سال پیش
پیام خصوصی که بهت دادم رو بخون و جواب بده دوست عزیز!
Mseif 12 سال پیش
استاد هم جواب ما رو نمیده

پاسخ‌ها 2

مجتبی یگانه 12 سال پیش

لیست ویو به دلیل ساختار الواری ای که داره ، اگر یکی از radio ها  فعال بشه ، دفعه ی بعدی که اون الوار بیاد بالا ، اون radio بازم فعال هست ، برای حل این مشکل باید تمام مقدار ها رو در متد fill از آیتم جدید بگیرید ، یعنی در اول این متد بگید همه ی radio ها رو unCheck کن و بعد اگه قرار هست آیتمی فعال باشه ، فعال اش کنید

publicvoid fill(ArrayAdapter<Structsoal> adapter,finalStructsoal itemsoal,int position){
resetRadioButtons();
radi1.setChecked(true);
}

نظرات

Mseif 12 سال پیش
داداش ممنون از راهنمایی ولی من بازم نگرفتم چی شد ...!! خیلی دارم روش کار میکنم ولی نمیدونم چرا این لیست ویو اینقد برام نا مفهوم شده ... بنده پروژه رو براتون آپلود کردم اگه زحمتی براتون نیست یه نگاه بهش بندازید و یه اجرا بگیرید ببینید کجاش مشکل داره واقعا لطف بزرگی در حق بنده میکنید ممنون لینک
مجتبی یگانه 12 سال پیش
استاد در آموزش لیست ویو توضیح دادند ، اونجا همین مشکل رو با رنگ پس زمینه ی ایتم داریم
Mseif 12 سال پیش
بله اونو بارها دیدم ولی اون واسه رنگ ها بود ولی این مشکل رو نمی دونم چطور رفع کنم وقتی یکی از گزینه های سوال اول رو می زنم سوال های بعدی هم گزینه یکشون زده میشه ... اگه ممکنه یه نگاه به سورس بندازید ممنون میشم
مجتبی یگانه 12 سال پیش
عذر میخوام الان امکانش رو ندارم ، امیدوارم بقیه ی دوستان کمک تون کنند
Mseif 12 سال پیش
بازم ممنون از لطفتون
Mseif 12 سال پیش
دوستان لطفا کمک کنید
Mseif 12 سال پیش
دوستان لطفا کمک کنید
ajn91 12 سال پیش

دوست عزیز این متغییر رو به Structsoal اضافه کنید:

public int    selectedId = -1;

و خطوط زیر رو به متد fill  در کلاس Adaptersoal اضافه کنید:

rdb_go.setOnCheckedChangeListener(new OnCheckedChangeListener() {
    @Override
    public void onCheckedChanged(RadioGroup group, int checkedId) {
        itemsoal.selectedId = checkedId;
    }
});
if (itemsoal.selectedId == -1) {
    rdb_go.clearCheck();
} else {
    rdb_go.check(itemsoal.selectedId);
}

نظرات

Mseif 12 سال پیش
داداش سپاس فراوان از شما فقط یه اروری میده setOnCheckedChangeListener The method setOnCheckedChangeListener(RadioGroup.OnCheckedChangeListener) in the type RadioGroup is not applicable for the arguments (new CompoundButton.OnCheckedChangeListener(){})
ajn91 12 سال پیش
داداش موستو ببر روی قسمت OnCheckedChangeListener() و imort بکنش
Mseif 12 سال پیش
ایمپورت نداره
Mseif 12 سال پیش
داداش درست شد دمت گرم خدا بچه ات رو واست نگه داره :))
jamal2012 9 سال پیش
من این کارو کردم و جواب داد حالا میخوام وقتی کاربر روی رادیو باتن اول کلیک میکنه مقدار 1 تو دیتابیس ذخیره بشه واگه روی رادیو باتن 2 کلیک میکنه مقدار 2 ذخیره میشه

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