У меня проблема с передачей данных из activity в другое activity

#java #android

#java #Android

Вопрос:

 public class Memo extends AppCompatActivity {

DBHandler dbh;
Notes items;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_memo);
    getSupportActionBar().hide();
    try{
        dbh = new DBHandler(this);
    }
    catch (Exception ex){
        ex.printStackTrace();
    }
   display();
}

public void display( ){              //method to display all items in the database
    List<Notes> books_list = dbh.getNotes();             ////here i get the list fromm the database
    ///// i used a custom adapter because i needed it
    final myAdapter adapter = new myAdapter(this, books_list);          ///creating adapter from 
myadapter to link it with  the list
    ListView _note_ = findViewById(R.id.list_txt);
    _note_.setAdapter(adapter);

    _note_.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {     
            items = (Notes) adapter.getItem(position);
            String Note_content = items.getNote();
            String title = items.getTitle();
            String Date = items.getDate();
            Intent i = new Intent(getApplicationContext() ,Note_content.class);
            i.putExtra("Note ", Note_content);
            i.putExtra("title", title);
            i.putExtra("Date", Date);

            startActivity(i);
        }
    });
 

у меня проблема, когда я пытаюсь получить данные (только примечание) из этого activity в другое activity, работают другие значения (дата и заголовок), я попытался использовать метод toString в классе Notes, но он выдает null для note

 public class Note_content extends AppCompatActivity {
Notes item;
TextView txt_note ,txt_date , txt_title;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_note_content);
    txt_title = findViewById(R.id.txt_ntitle);
    txt_note = findViewById(R.id.txt_Nnote);
    txt_date = findViewById(R.id.txt_Ndate);

    Intent i = getIntent();
    String note = i.getStringExtra("Note");
    String title = i.getStringExtra("title");
    String date = i.getStringExtra("Date");
     item = new Notes(title,note,date);

    txt_note.setText(item.getNote());
    //txt_note.setText(note)
    txt_date.setText(date);
    txt_title.setText(title);
}
 

это второй activit, он не выдает никаких ошибок, кроме null вместо note
и этого класса Notes

  public class Notes {
    private  int id;
    private String title;
    private String note ;
    private String date;

    public Notes() {
    }

    public Notes(String title, String note, String date) {
        this.title = title;
        this.note = note;
        this.date = date;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getNote() {
        return note;
    }

    public void setNote(String note) {
        this.note = note;
    }

    public String getDate() {
        return date;
    }

    public void setDate(String date) {
        this.date = date;
    }

    @Override
    public String toString() {
        return this.note "n" title "n" date;
    }
    }
 

Комментарии:

1. Можете ли вы отредактировать вопрос и добавить Notes класс?

2. Можете ли вы подтвердить, что переменная Note_content не равна null, когда вы помещаете ее в свое намерение (регистрируете ее)?

3. @Sz-NikaJanos да, это была проблема. Я был уверен в коде, но это пространство было ошибкой. Спасибо

4. @muaazDeyab пожалуйста, отметьте мой комментарий, чтобы ИТ-специалисты знали, в чем проблема, поскольку этот вопрос получает новые сообщения. Спасибо! хорошего дня. Если вам все еще нужна помощь. протяни руку.

Ответ №1:

я.putExtra(«Примечание «, Note_content); В приведенной выше строке кода «Примечание» имеет дополнительный пробел в конце.

Комментарии:

1. Я уже упоминал об этом в комментариях, это была проблема