sam
sam

Reputation: 5

how to get text from a selected item on a list and set that text in a TextView?

I have created a list. And I need to get the text on the list item, when it is clicked. Then that text need to be set in a TextView. Following is my code and i get a force stop when I run it. Please give some ideas.

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    txtTask = (EditText)findViewById(R.id.txtTask);
    btnAdd = (Button)findViewById(R.id.btnAddTask);
    selectedTask = (TextView)findViewById(R.id.textViewTask);

    list = getListView();
    list.setTextFilterEnabled(true);

    btnAdd.setOnClickListener(this);
    list.setOnKeyListener(this);


    toDoItems = new ArrayList<String>();
    oo = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,   toDoItems);
    list.setAdapter(oo);
    list.setOnItemClickListener(new OnItemClickListener(){
        @Override
    public void onItemClick(AdapterView<?> parent, View view, int position,
                long id3) {     
        int tmp = list.getSelectedItemPosition();
        String v= toDoItems.get(tmp).toString();
        selectedTask.setTag(v);
        flippy.showNext();
        }

        });

    }

Upvotes: 0

Views: 3598

Answers (2)

SAMD
SAMD

Reputation: 431

After you have got the string v, you need to put the following line :

selectedTask.setText(v);

Also there is no need to put list.setOnKeyListener(this); since you need to listen for the item being clicked.

Upvotes: 0

Yugandhar Babu
Yugandhar Babu

Reputation: 10349

Replace below 3 lines of your code in onItemClick method with my suggested code.

int tmp = list.getSelectedItemPosition();
String v= toDoItems.get(tmp).toString();
selectedTask.setTag(v);

Suggested Code

String v= toDoItems[position]; // or
String v = list.getItemAtPosition(position).toString();
selectedTask.setText(v);

Upvotes: 2

Related Questions