无法使用SharedReferences完成活动并应用转到其他活动的条件 public类userdetail扩展活动实现OnClickListener{ 共享引用优先权; @凌驾 创建时受保护的void(Bundle savedInstanceState){ //TODO自动生成的方法存根 super.onCreate(savedInstanceState); requestWindowFeature(窗口。功能\u无\u标题); setContentView(R.layout.user\u详细信息); imageView_pic=(imageView)findViewById(R.id.imageView_pic); button\u selectpic=(button)findViewById(R.id.button\u selectpic); Upload=(按钮)findViewById(R.id.uploadButton); 按钮\选择pic.setOnClickListener(此按钮); Upload.setOnClickListener(这个); name=(EditText)findViewById(R.id.name); city=(AutoCompleteTextView)findViewById(R.id.city); String[]languages=getResources().getStringArray(R.array.citylist); ArrayAdapter=新的ArrayAdapter(此, android.R.layout.simple\u下拉列表\u项目\u 1行,语言); setAdapter(适配器); 城市。设定阈值(1); prefs=getSharedReferences( AppConstants.LOGIN\u PREFS,Context.MODE\u PRIVATE); member_id=prefs.getString(“member_id”,”); 布尔startSecond1=prefs.getBoolean(“StartSecondActivty1”,false); // ....................................// 如果(开始第二个1){ Intent newpage=newintent(userdetail.this, 联系活动(课堂); startActivity(newpage); 完成(); } } @凌驾 public void onBackPressed(){ //TODO自动生成的方法存根 super.onBackPressed(); } @凌驾 公共void onClick(视图v){ //TODO自动生成的方法存根 Name=Name.getText().toString(); City=City.getText().toString(); if(v.getId()==R.id.uploadButton){ if(Name.toString().length()=0){ Toast.makeText(getApplicationContext(),“输入您的姓名”, 10000)show(); }else if(City.toString().length()=0){ Toast.makeText(getApplicationContext(),“进入您的城市”, 10000)show(); }否则{ if(Utils.isNetworkAvailable(userdetail.this)){ SharedReferences设置=GetSharedReferences( AppConstants.LOGIN\u PREFS,模式\u PRIVATE); //将数据写入SharedReferences Editor=settings.edit(); putString(“mEmberUsername”,Name.toString()); putString(“mEmberUserCity”,City.toString()); 编辑器.putBoolean(“StartSecondActivty1”,true); commit(); 新建Uploadimage().execute(); }否则{ Toast.makeText(getApplicationContext(), “请检查您的互联网连接”, Toast.LENGTH_LONG).show(); } }
当用户活动来自Actviation.javaclass时,我为从Userdetail到Contact Activity编写的代码。我必须输入一些字段才能将数据上载到服务器new Uploadimage().execute();使用此Asynk任务假设当前我从激活类到用户详细信息类,现在我没有在Userdetail类中填写信息,突然我按下了返回按钮或主页按钮,然后我启动了应用程序it Userdetail类未打开,现在它转到Contactclass,而它应该在userdetailclass上请告诉我我在哪里做wrong并告诉我解决方案。当活动开始时,检查此值无法使用SharedReferences完成活动并应用转到其他活动的条件 public类userdetail扩展活动实现OnClickListener{ 共享引用优先权; @凌驾 创建时受保护的void(Bundle savedInstanceState){ //TODO自动生成的方法存根 super.onCreate(savedInstanceState); requestWindowFeature(窗口。功能\u无\u标题); setContentView(R.layout.user\u详细信息); imageView_pic=(imageView)findViewById(R.id.imageView_pic); button\u selectpic=(button)findViewById(R.id.button\u selectpic); Upload=(按钮)findViewById(R.id.uploadButton); 按钮\选择pic.setOnClickListener(此按钮); Upload.setOnClickListener(这个); name=(EditText)findViewById(R.id.name); city=(AutoCompleteTextView)findViewById(R.id.city); String[]languages=getResources().getStringArray(R.array.citylist); ArrayAdapter=新的ArrayAdapter(此, android.R.layout.simple\u下拉列表\u项目\u 1行,语言); setAdapter(适配器); 城市。设定阈值(1); prefs=getSharedReferences( AppConstants.LOGIN\u PREFS,Context.MODE\u PRIVATE); member_id=prefs.getString(“member_id”,”); 布尔startSecond1=prefs.getBoolean(“StartSecondActivty1”,false); // ....................................// 如果(开始第二个1){ Intent newpage=newintent(userdetail.this, 联系活动(课堂); startActivity(newpage); 完成(); } } @凌驾 public void onBackPressed(){ //TODO自动生成的方法存根 super.onBackPressed(); } @凌驾 公共void onClick(视图v){ //TODO自动生成的方法存根 Name=Name.getText().toString(); City=City.getText().toString(); if(v.getId()==R.id.uploadButton){ if(Name.toString().length()=0){ Toast.makeText(getApplicationContext(),“输入您的姓名”, 10000)show(); }else if(City.toString().length()=0){ Toast.makeText(getApplicationContext(),“进入您的城市”, 10000)show(); }否则{ if(Utils.isNetworkAvailable(userdetail.this)){ SharedReferences设置=GetSharedReferences( AppConstants.LOGIN\u PREFS,模式\u PRIVATE); //将数据写入SharedReferences Editor=settings.edit(); putString(“mEmberUsername”,Name.toString()); putString(“mEmberUserCity”,City.toString()); 编辑器.putBoolean(“StartSecondActivty1”,true); commit(); 新建Uploadimage().execute(); }否则{ Toast.makeText(getApplicationContext(), “请检查您的互联网连接”, Toast.LENGTH_LONG).show(); } },android,Android,当用户活动来自Actviation.javaclass时,我为从Userdetail到Contact Activity编写的代码。我必须输入一些字段才能将数据上载到服务器new Uploadimage().execute();使用此Asynk任务假设当前我从激活类到用户详细信息类,现在我没有在Userdetail类中填写信息,突然我按下了返回按钮或主页按钮,然后我启动了应用程序it Userdetail类未打开,现在它转到Contactclass,而它应该在userdetailclass上请告诉
startSecond1=prefs.getBoolean(“StartSecondActivty1”,false);
但单击后,您将“StartSecondActivty1”更改为true,并且不再调用oncreate,这就是为什么您的活动未完成的原因hello@Danish Aziz如何应用条件假设我有按钮单击,然后?在恢复函数Boolean startSecond1=prefs.getBoolean(“StartSecondActivty1”,false)上调用它;//……//if(startSecond1){Intent newpage=newintent(userdetail.this,ContactActivity.class);startActivity(newpage);finish();}当任何用户返回到您的屏幕上时,如果条件为真,它将发送到另一个活动。您应该编辑您的第一个答案,而不是发布新答案。@DanishAziz我无法理解ContactActivity的Userdetail。我可以去,但问题是,假设我在Userdetail上,现在我按了“上一步”按钮,那么activity Userdetail将变为“完成”,并转到Co在不获取用户详细信息的情况下执行活动,因此请告诉我该问题的解决方案,在backpress上调用此代码//将数据写入SharedReferences Editor=settings.edit();Editor.putString(“mEmberUsername”,Name.toString());Editor.putString(“mEmberUserCity”,City.toString());editor.putBoolean(“StartSecondActivty1”,true);editor.commit();它将在您离开userdetail活动时保存您的数据
public class userdetail extends Activity implements OnClickListener {
SharedPreferences prefs;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.user_detail);
imageView_pic = (ImageView) findViewById(R.id.imageView_pic);
button_selectpic = (Button) findViewById(R.id.button_selectpic);
Upload = (Button) findViewById(R.id.uploadButton);
button_selectpic.setOnClickListener(this);
Upload.setOnClickListener(this);
name = (EditText) findViewById(R.id.name);
city = (AutoCompleteTextView) findViewById(R.id.City);
String[] languages = getResources().getStringArray(R.array.citylist);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_dropdown_item_1line, languages);
city.setAdapter(adapter);
city.setThreshold(1);
prefs = getSharedPreferences(
AppConstants.LOGIN_PREFS, Context.MODE_PRIVATE);
member_id = prefs.getString("Member_id", "");
Boolean startSecond1 = prefs.getBoolean("StartSecondActivty1", false);
// ....................................//
if (startSecond1) {
Intent newpage = new Intent(userdetail.this,
ContactActivity.class);
startActivity(newpage);
finish();
}
}
@Override
public void onBackPressed() {
// TODO Auto-generated method stub
super.onBackPressed();
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Name = name.getText().toString();
City = city.getText().toString();
if (v.getId() == R.id.uploadButton) {
if (Name.toString().length() == 0) {
Toast.makeText(getApplicationContext(), "Entere Your Name",
10000).show();
} else if (City.toString().length() == 0) {
Toast.makeText(getApplicationContext(), "Enter Your City",
10000).show();
} else {
if (Utils.isNetworkAvailable(userdetail.this)) {
SharedPreferences settings = getSharedPreferences(
AppConstants.LOGIN_PREFS, MODE_PRIVATE);
// Writing data to SharedPreferences
Editor editor = settings.edit();
editor.putString("mEmberUsername", Name.toString());
editor.putString("mEmberUserCity", City.toString());
editor.putBoolean("StartSecondActivty1", true);
editor.commit();
new Uploadimage().execute();
} else {
Toast.makeText(getApplicationContext(),
"Please Check ur Internet Connection",
Toast.LENGTH_LONG).show();
}
}
@Override
public void onResume(){
super.onResume();
// put your code here...
prefs = getSharedPreferences(
AppConstants.LOGIN_PREFS, Context.MODE_PRIVATE);
member_id = prefs.getString("Member_id", "");
Boolean startSecond1 = prefs.getBoolean("StartSecondActivty1", false);
// ....................................//
if (startSecond1) {
Intent newpage = new Intent(userdetail.this,
ContactActivity.class);
startActivity(newpage);
finish();
}
}