leithdm
4/29/2020 - 6:56 AM

Intent: moving data between ListView and activity

 //activity 1
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        ListView listView = findViewById(R.id.listView);
        final ArrayList<String> people = new ArrayList<>(asList("foo", "bar", "foobar"));
        ArrayAdapter peopleAdapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, people);
        listView.setAdapter(peopleAdapter);

        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
                Intent intent = new Intent(getApplicationContext(), SecondActivity.class);
                intent.putExtra("name", people.get(i));
                startActivity(intent);
            }
        });
    }
    
    //activity 2
        @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_second);

        Intent intent = getIntent();
        String result = intent.getStringExtra("name");
        Toast.makeText(this, "name is " + result  ,Toast.LENGTH_LONG).show();
    }