View Full Version : disable کردن دکمه یه اکتیویتی دیگه چطور انجام میشه ؟
  
badname
شنبه 07 تیر 1393, 03:00 صبح
من از findViewById(R.id.btn2).setEnabled(false);
استفاده کردم نشد فک کنم اینجوری نمیشه یه عکس پیوست کردم قشنگ جا بیوفته :لبخند:
120550
poorman
شنبه 07 تیر 1393, 03:16 صبح
اول جدا دکمه رو تعریف کنین با آیدی، بعد بگین btn.setEnabled ببینین درست میشه ؟
dasssnj
شنبه 07 تیر 1393, 09:15 صبح
خب توی اکتیویتی دوم وقتی دکمه کلیک شد یه boolean توی shared prefrance ذخیره کن . بعد توی تابع  onCreate اکتیویتی home چک ش کن اگه true بود دکمه را disable کن اگه نبود نکن.
badname
شنبه 07 تیر 1393, 13:16 عصر
اول جدا دکمه رو تعریف کنین با آیدی، بعد بگین btn.setEnabled ببینین درست میشه ؟
روشی که شما گفتین Stop میده ، نمیدونم بخاطر اینکه برای یه اکتیویتی دیگه ست نمیشه یا بخاطر اینه که دکمه ورود به همین اکتیویتیه نمیشه .
ساده بودا نمیدونم چرا نمیشه هر جوری تست کردم :لبخندساده:
dasssnj
شنبه 07 تیر 1393, 13:19 عصر
روشی که شما گفتین Stop میده ، نمیدونم بخاطر اینکه برای یه اکتیویتی دیگه ست نمیشه یا بخاطر اینه که دکمه ورود به همین اکتیویتیه نمیشه .
ساده بودا نمیدونم چرا نمیشه هر جوری تست کردم :لبخندساده:
shred prefs را تست کردی ؟
تو توی اون اکتیویتی فقط مقدار true را ذخیره کن . برای اینکه کرش نکنه توی اکتیویتی اصلی باتن را بر اساس پرفرنس disable کن.
می خوای یه پروژه ی تست بسازم برات ؟
badname
شنبه 07 تیر 1393, 13:49 عصر
shred prefs را تست کردی ؟
تو توی اون اکتیویتی فقط مقدار true را ذخیره کن . برای اینکه کرش نکنه توی اکتیویتی اصلی باتن را بر اساس پرفرنس disable کن.
می خوای یه پروژه ی تست بسازم برات ؟
داشتم تست میکردم نشد کرش نکرد ، ولی عملم نکرد فک کنم اشتباه مینویسم :ناراحت:
نه داداش نمیخوام وقتتو بگیرم ، شرمندت میشم. با کد اینجا راهنمایی کنی خودم جفتو جورش میکنم :لبخندساده:
dasssnj
شنبه 07 تیر 1393, 14:01 عصر
اینو توی تابع onclick دکمه توی اکتیویتی دوم بنویس:
        SharedPreferences s = getSharedPreferences("disable", Context.MODE_PRIVATE);
        s.edit().putBoolean("isenabled", false).commit();
اینو توی تابع oncreate اکتیویتی هوم بنویس و آی دی دکمه ت را جای اون آی دی بزار :
        SharedPreferences ss = getSharedPreferences("disable", Context.MODE_PRIVATE);
        Button m = (Button)findViewById(R.id.button1);
        m.setEnabled(ss.getBoolean("isenabled", true));
تست کن ببین چی میشه
mfaridi
شنبه 07 تیر 1393, 14:13 عصر
شما باید با intent این کار رو انجام بدید به این صورت 					intent.putExtra("enable", true);  بعد اکتیویتی رو استارت کنید و توی اکتیویتی بعدی نتیجه intent رو بگیرید
badname
شنبه 07 تیر 1393, 14:31 عصر
اینو توی تابع onclick دکمه توی اکتیویتی دوم بنویس:
        SharedPreferences s = getSharedPreferences("disable", Context.MODE_PRIVATE);
        s.edit().putBoolean("isenabled", false).commit();
عالی بود ، ولی یه مشکلی دارم باهاش ، باید یبار برنامه رو ببندم دوباره بیام تا عمل کنه :لبخندساده:
اینو توی تابع oncreate اکتیویتی هوم بنویس و آی دی دکمه ت را جای اون آی دی بزار :
        SharedPreferences ss = getSharedPreferences("disable", Context.MODE_PRIVATE);
        Button m = (Button)findViewById(R.id.button1);
        m.setEnabled(ss.getBoolean("isenabled", true));
تست کن ببین چی میشه
عالی بود ، فقط یه مشکلی داشت (باید یبار میبستم برنامه رو دوباره باز میکردم تا کار کنه ، بسته شه)  که با این حل شد :
	protected void onCreate(Bundle savedInstanceState) 
	{
	     super.onCreate(savedInstanceState);
	     setContentView(R.layout.main);
	     updatebtn();
	@Override
	protected void onRestart() {
		// TODO Auto-generated method stub
		super.onRestart();
		updatebtn();	
	}
	
	public void updatebtn() {
	     SharedPreferences ss = getSharedPreferences("disable", Context.MODE_PRIVATE);
	        Button m = (Button)findViewById(R.id.buttonSignUP);
	        m.setEnabled(ss.getBoolean("isenabled", true));
	}
badname
شنبه 07 تیر 1393, 14:34 عصر
شما باید با intent این کار رو انجام بدید به این صورت                     intent.putExtra("enable", true);  بعد اکتیویتی رو استارت کنید و توی اکتیویتی بعدی نتیجه intent رو بگیرید
ممنون حل شد ، روش شمام میشد به ذهنم نرسیده بود :لبخند: :
Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
Bundle b = new Bundle();
b.putInt("key", 1); //Your id
intent.putExtras(b); //Put your id to your next Intent
startActivity(intent);
finish();
 
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.