آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

نمایش یک بار Activity

sajad98  11 سال پیش  11 سال پیش
0 0

سلام. من یه اکتیویتی دارم که برای خوش آمد گوییه و فقط میخوام یک بار نمایش داده بشه.

یه دکمه" تایید" و یه دکمه "دیگه نمایش نده" داره.

میخوام وقتی روی "دیگه نمایش نده" کلیک شد، این اکتیویتی دیگه نشون داده نشه

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

ممنون میشم کمک کنید.

+2 0
از Preferences داخل onClick کن ، قسمت Using Preferences آموزشهای استاد رو یه نگاه بنداز (11 سال پیش)
+1 0
سلام دوست عزیز شما میتونید از آموزشهای استاد قسمت 17 بخش اول را تا آخر ببینید. شاید به شما کمک کنه. (11 سال پیش)
0 0
اون بخش رو دیدم اما بازم نتونستم درست کنم (11 سال پیش)
0 0
یه نفر بگه چیکار کنم (11 سال پیش)
0 0
خیلی راحته ، من پیشنهاد می کنم به جای اینکه کد بخوای ، خودت باهاش دست و پنجه نرم کنی ، چون گیر های اینجوری تو برنامه مویسی زیاده ، امیدوارم با کمی وقت گذاشتن خودت حل کنی (11 سال پیش)
0 0
از دیشب تا حالا دارم امتحان میکنم. نتونستم. خودت بگو چیکار کنم. اصلا کدشو بزار. دعاتم میکنم :) (11 سال پیش)
0 0
یکی بگه چیکار کنم خوب (11 سال پیش)
0 0
تو آموزشهای استاد بعد از اولین اجرا برنامه یک متغییر Shared Preference رو مقدار false ست می کنیم و در اجراهای بعدی تست می کنیم که متغییر اگه False نبود اکتیویتی رو اجرا کنه. حالا شما کافیه بجای اینکه در اولین اجرا مقدار متغییر رو false کنی در متد onClickListener دکمه "دیگه نمایش نده" مقدار متغییر رو با false ست کنی. (11 سال پیش)
 برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال 
دبیری  11 سال پیش
0 0

دقیقا سوالتو نفهمیدم
اما اگه میخوای با زدن یه تیک دیگه صفحه ای نمایش داده نشه ( که پیشنهاد میکنم جای یک اکتیویتی از  یک دیاگرام  استفاده کنی )

خیلی راحت یه تابع boolean تعریف کن

مقدار این تابع  برابر true هست مگر اینکه کاربر تیک نمایش نده رو بزنه اونوقت واسه همیشه مقدارش false میشه و با شرطی که اول تابع گزاشتی که دستور در صورتی که true بود اجرا شه چون دیگه مقدار واسه همیشه false شده  اون صفحه اجرا نمیشه

امیدوارم اینکار مشکلتو حل کنه

 
0 0
نمیشه هر کاری میکنم. میشه خودت بنویسی کدشو. اصلا دیوونم کرده این (11 سال پیش)
پاسخ به سوال 
behnam2000  11 سال پیش
0 0

اگه منظور شما رو درست متوجه شده باشم تنها یک راه حل بصورت زیر به ذهنم رسید:

قبل از  onCreate تعریف کنید:

 public Boolean state1=true;

اونجایی که لایه متناظر با اکتیویتی رو تعیین می کنید:

  if(state1==true)  setContentView(R.layout.a);
else setContentView(R.layout.b);
 

حال چون در ابتدا state=true تعریف کرده اید به اکیویتی خوش آمد گویی هدایت می شوید که درون آن دو دکمه تائید و دیگه نمایش نده وجود داره.حال شما بایستی برای کلیک خوردن دکمه دیگه نمایش نده کد زیر رو بنویسید:

  btn.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                SharedPreferences preferences = getSharedPreferences("status", 0);
                SharedPreferences.Editor editor = preferences.edit();              
editor.putBoolean("state2",true); editor.commit();
state1= preferences.getBoolean("state2",true); } });

 همینجوری کدهای بالا به ذهنم رسید لذا در عمل خودتون یه تستی بکنید.

 
0 0
میشه برای حالت دیالوگ بگید باید چیکار کنم؟ هر کاری میکنم نمیشه. یعنی این دکمه ها نبود راحت بود. ممنون/. (11 سال پیش)

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