بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
آپدیت نشدن Emulator بعد از تغییرات در پروژه note
سلام دوستان.در پروژه note-server ، وقتی تغییراتی در ActivityEdit انجام میدم یا لیستی اضافه میکنم، وقتی برمیگرده تو ActivityMain ، تو emulator(نرم افزار) آپدیت نمیشه ولی تغییرات تو سرور انجام میشه .لطفا راهنمایی کنید.
---------------------------------------------------------------------------------------------------------
public class ActivityMain extends Activity {
@Override
protected void onResume() {
G.currentActivity = this;
super.onResume();
adapter.notifyDataSetChanged();
}
private ArrayAdapter adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ListView lstView = (ListView) findViewById(R.id.lstView);
Button btnAdd = (Button) findViewById(R.id.btnAdd);
adapter = new AdapterNote(G.task);
lstView.setAdapter(adapter);
btnAdd.setOnClickListener(new OnClickListener() {
public void onClick(View arg0) {
Intent intent = new Intent(G.currentActivity, ActivityEdit.class);
G.currentActivity.startActivity(intent);
}
});
WebService.readData();
adapter.notifyDataSetChanged();
}
}
------------------------------------------------------------------------------------------------
public class ActivityEdit extends Activity {
public boolean mustInsert;
@Override
protected void onResume() {
G.currentActivity = this;
super.onResume();
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_edit);
final EditText edtTitle = (EditText) findViewById(R.id.edtTitle);
final EditText edtDesc = (EditText) findViewById(R.id.edtDesc);
final CheckBox chkDone = (CheckBox) findViewById(R.id.chkDone);
Button btnOk = (Button) findViewById(R.id.btnOk);
final StructTask task;
Bundle extras = getIntent().getExtras();
if (extras != null) {
int position = extras.getInt("POSITION");
task = G.task.get(position);
edtTitle.setText(task.title);
edtDesc.setText(task.desc);
chkDone.setChecked(task.done);
} else {
task = new StructTask();
mustInsert = true;
}
btnOk.setOnClickListener(new OnClickListener() {
public void onClick(View arg0) {
task.done = chkDone.isChecked();
BasicNameValuePair idPair = new BasicNameValuePair("id", "" + task.id);
BasicNameValuePair titlePair = new BasicNameValuePair("title", edtTitle.getText().toString());
BasicNameValuePair descPair = new BasicNameValuePair("desc", edtDesc.getText().toString());
BasicNameValuePair donePair = new BasicNameValuePair("done", "" + (task.done ? 1 : 0));
ArrayList params = new ArrayList();
params.add(titlePair);
params.add(descPair);
params.add(idPair);
params.add(donePair);
if (mustInsert) {
WebService.insertData(params);
G.task.add(task);
} else {
WebService.updateData(params);
}
finish();
}
});
}
}
0
0
adabter.notifydatasetchenge();
برای آبدیت و Refresh اطلاعات بکار ببرید (10 سال پیش)
0
0
کد ها را به صورت کد بزارین نه متن معمولی نکته دوستمون را تست کنید (10 سال پیش)
0
0
کدها رو اصلاح کردم تو متن. از adapter.notifyData... استفاده کردم بازم جواب نمیده. (10 سال پیش)
0
0
Log بزار و تست کن کدت به نظر مشکل نداره (10 سال پیش)
0
0
(10 سال پیش)
برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال
hossein_hr10
10 سال پیش
+2
0
سلام دوست عزیز کدی نوشتین
publicvoid onClick(View arg0){ task.done= chkDone.isChecked(); BasicNameValuePair idPair =newBasicNameValuePair("id",""+ task.id); BasicNameValuePair titlePair =newBasicNameValuePair("title", edtTitle.getText().toString()); BasicNameValuePair descPair =newBasicNameValuePair("desc", edtDesc.getText().toString()); BasicNameValuePair donePair =newBasicNameValuePair("done",""+(task.done?1:0)); ArrayListparams=newArrayList(); params.add(titlePair); params.add(descPair); params.add(idPair); params.add(donePair); if(mustInsert){ WebService.insertData(params); G.task.add(task); }else{ WebService.updateData(params); } finish();
}
به این نمونه تغییر بدی
publicvoid onClick(View arg0){ task.done= chkDone.isChecked();
///////////////
task.title=edtTitle.getText().toString());
task.desc=edtDesc.getText().toString());
////////////////
BasicNameValuePair idPair =newBasicNameValuePair("id",""+ task.id);
BasicNameValuePair titlePair =newBasicNameValuePair("title", edtTitle.getText().toString());
BasicNameValuePair descPair =newBasicNameValuePair("desc", edtDesc.getText().toString());
و در ادامه دقیقا همون کد خودتون رو بنویسید فقط اون دو خطی که داخل //// نوشتمو رو اضافه کنیند به کداتون
و دستوری رو هم که نوشتین
ArrayListparams=newArrayList();
به این تغییر بدین
ArrayList<NameValuePair>params=newArrayList<NameValuePair>();
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .