Я пытаюсь обновить свой список с помощью Экстраданных, которые я получил из другого вида деятельности.
Я управляю своим TutorAdapter, который расширен из Baseadapter с помощью arraylist, и код выглядит следующим образом:
class TutorAdaptor extends BaseAdapter{
ArrayList<TutorItem> tutors=new ArrayList<TutorItem>();
@Override
public int getCount() {
return tutors.size();
}
public void addItem(TutorItem item){
tutors.add(item);
}
@Override
public Object getItem(int position) {
return tutors.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
TutorItemView view;
if(convertView == null){
view = new TutorItemView(getApplicationContext());
}else{
view = (TutorItemView) convertView;
}
TutorItem item = tutors.get(position);
view.setTitle(item.getTitle());
view.setPrice(item.getPrice());
return view;
}
и я первоначально добавил Items в метод onCreate, используя метод addItem из адаптера
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_show_tutor);
Button button = (Button) findViewById(R.id.tutorButton);
Button button2 = (Button) findViewById(R.id.tutorFindButton);
Button writeButton = (Button) findViewById(R.id.wrtieButton);
writeButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(v != null){
showTutorWrite();}
}
});
listView = (ListView) findViewById(R.id.listView);
adaptor =new TutorAdaptor();
adaptor.addItem(new TutorItem("title: korean speaking for beginners","price: 10 euro per hour"));
adaptor.addItem(new TutorItem("title: korean grammar for beginners","price: 5 euro per hour"));
listView.setAdapter(adaptor);
}
Итак, теперь я хочу добавить Item из данных, полученных от tutorWriteView.
это код из tutorWrite View,
saveButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
returnToShowTutor();
}
});
}
public void returnToShowTutor(){
String name = nameText.getText().toString();
String title = titleText.getText().toString();
Intent intent = new Intent();
intent.putExtra("Name",name);
intent.putExtra("title",title);
setResult(RESULT_OK, intent);
finish();
}
и это код в главном представлении для получения дополнительных данных из tutorWriteView,
public void onActivityResult(int requestCode, int resultCode, @Nullable Intent intent) {
super.onActivityResult(requestCode, resultCode, intent);
if (requestCode == 101) {
if(intent !=null){
name = intent.getStringExtra("Name");
title = intent.getStringExtra("Title");
TutorItem val = new TutorItem("name:"+name,"title:"+title);
if(name !=null && title !=null){
adaptor.addItem(val);
adaptor.notifyDataSetChanged();
}
}
}
}
это то, что я написал в соответствии с информацией я нашел на Inte rnet. но когда я активирую приложение и нажимаю кнопку saveButton, просмотр списка не обновляется, поэтому, пожалуйста, помогите мне, что я сделал неправильно и как я могу изменить свой код.