Android: um id de botão, muitos botões, um id de vista, usando getTag (), setTag ()

Eu sou capaz de exibir todos ou número seletivo de registros usando getAllRecords () e getRecord (long id). A coisa é que eu quero exibir um registro diferente para cada botão de vista na minha lista expansível child.each criança tem um botão de vista ligado a ela.a posição do grupo é conhecido. (1º grupo). mas a posição da criança parece impossível de rastrear. Eu tenho apenas um id de recurso. Como devo exibir registros diferentes para cada criança? por favor me ajude, pois isso me confunde com o núcleo. aqui está o código MyCustomAdapter.java, o código Parent.java e o código DisplayCursor.java. Eu tentei muito pensar nisso, tentando encontrar maneiras de extrair o ID filho e extrair esse registro específico do id.but tudo em vão. UPDATE: descobri que eu preciso usar getTag () e viewTag () para que isso aconteça. Mas eu não encontro nenhum recurso na rede para me mostrar corretamente como fazê-lo neste caso. Por favor, dirija-me.

Código MyCustomAdapter. (contém funções de lista expansíveis getchildview e getgroupview)

public class MyCustomAdapter extends BaseExpandableListAdapter {


private LayoutInflater inflater;
private ArrayList<parent> mParent;
public MyCustomAdapter(){}
public MyCustomAdapter(Context context, ArrayList<parent> parent){
    mParent = parent;
    inflater = LayoutInflater.from(context);
}


@Override
//counts the number of group/parent items so the list knows how many times calls getGroupView() method
public int getGroupCount() {
    return mParent.size();
}

@Override
//counts the number of children items so the list knows how many times calls getChildView() method
public int getChildrenCount(int i) {
    return mParent.get(i).getArrayChildren().size();
}

@Override
//gets the title of each parent/group
public Object getGroup(int i) {
    return mParent.get(i).getTitle();
}

@Override
//gets the name of each item
public Object getChild(int i, int i1) {
    return mParent.get(i).getArrayChildren().get(i1);
}

@Override
public long getGroupId(int i) {
    return i;
}

@Override
public long getChildId(int i, int i1) {
    return i1;
}

@Override
public boolean hasStableIds() {
    return true;
}

@Override
//in this method you must set the text to see the parent/group on the list
public View getGroupView(int i, boolean b, View view, ViewGroup viewGroup) {

    if (view == null) {
        view = inflater.inflate(R.layout.investment_summary_parent, viewGroup,false);
    }

    TextView textView = (TextView) view.findViewById(R.id.list_item_text_view);
    //"i" is the position of the parent/group in the list
    textView.setText(getGroup(i).toString());

    //return the entire view
    return view;
}

@Override
//in this method you must set the text to see the children on the list
public View getChildView(int i, int i1, boolean b, View view, ViewGroup viewGroup) {
    if (view == null) {
        view = inflater.inflate(R.layout.investment_summary_child, viewGroup,false);

    }
   // viewbutton.getTag();
    TextView textView = (TextView) view.findViewById(R.id.list_item_text_child);
    //"i" is the position of the parent/group in the list and 
    //"i1" is the position of the child
    textView.setText(mParent.get(i).getArrayChildren().get(i1));

    //return the entire view
    return view;
}

@Override
public boolean isChildSelectable(int i, int i1) {
    return true;
}

@Override
public void registerDataSetObserver(DataSetObserver observer) {
    /* used to make the notifyDataSetChanged() method work */
    super.registerDataSetObserver(observer);
}
}

Código pai (métodos pai expansíveis)

public class parent {
private String mTitle;
private ArrayList<String> mArrayChildren;

public String getTitle() {
    return mTitle;
}

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

public ArrayList<String> getArrayChildren() {
    return mArrayChildren;
}

public void setArrayChildren(ArrayList<String> mArrayChildren) {
    this.mArrayChildren = mArrayChildren;
}
}

Código DisplayCursor: public class DisplayCursor estende ListActivity {DBAdapter db = new DBAdapter (this);

@Override
public void onCreate(Bundle savedInstanceState) 
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_display_cursor);
filldata();

}
@SuppressWarnings("deprecation")
public void filldata(){
db.open();

Cursor cursor = db.getRecord(2);//displays 2nd record
startManagingCursor(cursor);

String[] columns = new String[] {DBAdapter.invest_type,DBAdapter.curr_per_share_price, DBAdapter.share_name,
        DBAdapter.no_of_shares,DBAdapter.share_identity,DBAdapter.purchase_price,
        DBAdapter.purchase_from,DBAdapter.purchase_date,DBAdapter.purchase_contact};

int[] to = new int[] { R.id.investmenttype,R.id.currpershareprice,R.id.sharename,R.id.shareno,R.id.shareid,    R.id.purprice,
        R.id.purfrom,R.id.purdate,R.id.purcon};
 SimpleCursorAdapter mAdapter = new SimpleCursorAdapter( this, R.layout.row, cursor, columns, to);
 this.setListAdapter(mAdapter);
 db.close();

 }   
 }

POR FAVOR, indique as alterações que devo fazer para exibir um registro diferente para cada botão de visualização. Ou seja, se o primeiro botão de visualização filho for clicado, o primeiro registro deve ser exibido, o segundo botão de visualização secundário é clicado. Assim, digamos que eu tenha 3 filhos, 3 botões de visualização correspondentes e 3 registros.

questionAnswers(0)

yourAnswerToTheQuestion