Definir tags para cada item em um ListView no Android?

Eu tenho um ListView onde eu quero que cada item tenha um número de ID anexado a ele (não o mesmo que o número da posição). Eu estava esperando que isso pudesse ser feito definindo uma tag para cada item de exibição no ListView usandosetTag() quando essas exibições estão sendo criadas.

Agora estou criando o ListView assim:

    final ListView listview = (ListView) findViewById(R.id.listView1);
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, android.R.id.text1, names);
    listview.setAdapter(adapter);

onames A variável nos parâmetros ArrayAdapter acima é uma ArrayList, e cada valor de string nesta lista também possui um ID exclusivo que eu quero vincular a essa string de alguma forma.

Existe alguma maneira de acessar e modificar cada uma das exibições com uma tag? Uma ideia era criar minha própria classe estendida de ArrayAdapter e substituir o método getView (), mas eu realmente não entendo como isso funciona e como eu faria isso.

Ou há uma maneira melhor de vincular IDs a cada string como essa do que adicionar tags como estou tentando fazer?

questionAnswers(4)

yourAnswerToTheQuestion