jeudi 21 mai 2015

Intent Items onClick to Activity

I have this ListActivity for displaying Items getting from my ListViewActivity.

public class ListTasksActivity extends ListActivity implements AdapterView.OnItemClickListener {
    ArrayList<HashMap<String,String>> adapterItems;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        Intent i = getIntent();

        ListView lv = getListView();
        lv.setOnItemClickListener(this);

        ArrayList<HashMap<String, String>> taskItems = (ArrayList<HashMap<String, String>>) i.getSerializableExtra("taskItems");
        String[] stringArr = i.getStringArrayExtra("adapterStringArray");
        int[] intArr = i.getIntArrayExtra("adapterIntArray");

        ListAdapter taskadapter = new SimpleAdapter(this, taskItems,
                R.layout.list_item_tasks,
                stringArr,
                intArr);

        setListAdapter(taskadapter);
        adapterItems = taskItems;
        //CustomAdapterTasks customAdapterTasks = new CustomAdapterTasks((ListViewActivity) ListViewActivity.getAppContext(),);
    }

    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        String[] adapterString = new String[] {"location","object_id","task_subject","task_action","object"};
        int[] adapterInt = new int[]  {R.id.singleTaskLocation,R.id.singleTaskInvNumber,R.id.singleTaskSubject,R.id.singleTaskAction,R.id.singleTaskObject};

        //neue Oberflaeche starten
        Intent in = new Intent(this,ListSingleTaskActivity.class);
        in.putExtra("adapterStringArray",adapterString);
        in.putExtra("adapterIntArray",adapterInt);
        in.putExtra("taskItems",adapterItems);

        startActivity(in);
    }
}

If I click on an Item then this happens:

public class ListSingleTaskActivity extends Activity {
    private static final int CAMERA_PIC_REQUEST = 2500;

    ListView mylistview;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.single_task_layout);

        Intent i = getIntent();

        ArrayList<HashMap<String, String>> taskItems = (ArrayList<HashMap<String, String>>) i.getSerializableExtra("taskItems");
        String[] stringArr = i.getStringArrayExtra("adapterStringArray");
        int[] intArr = i.getIntArrayExtra("adapterIntArray");

        ListAdapter taskadapter = new SimpleAdapter(this, taskItems,
                R.layout.single_task_layout,
                stringArr,

}

My Problem is that i want to send the Informations from clicked Item to the new Activity and display them. The result from above Code is that he show me the whole Items. Not just the clicked one. What is wrong?

I hope that it's clear what my problem is. If something is missing just comment

Aucun commentaire:

Enregistrer un commentaire