我的ListView里面使用Xml来做子项
子项里面有一个Button和一个TextView
是自定义一个DetailAdapter,在这个里面通过mInflater.inflate(xml文件)绑定
在这里的getView()里定义的Button的Click方法,我想在这个事件去修改TextView的值,怎么做?
在网上找了很久,还是没有找到合适的办法,希望各位大哥帮帮忙!!!谢谢
------解决方案--------------------
set属性?
------解决方案--------------------
(TextView) listview.getChildAt(i).findViewById(
R.id.TextViewScore);
这个应该可以吧
------解决方案--------------------
这里有个挺好的总结,当时我弄ListView+Button的时候就在这儿学习的。
http://www.cnblogs.com/allin/archive/2010/05/11/1732200.html
------解决方案--------------------
自定义的DetailAdapter里面
- Java code
@Override public View getView(int position, View convertView, ViewGroup parent) { // TODO Auto-generated method stub final ViewHolder holder = null; if (convertView == null) { holder=new ViewHolder(); convertView = mInflater.inflate(inflateID, null); holder.table = (Button)convertView.findViewById(R.id.tableLayout1); holder.title = (TextView)convertView.findViewById(R.id.textView_title); convertView.setTag(holder); }else{ holder = (ViewHolder)convertView.getTag(); } holder.table.setOnClickListener(new OnClickListener(){ @Override public void onClick(View v) { // TODO Auto-generated method stub holder.title.setText("Title Text"); } }); return convertView; } private final class ViewHolder{ public Button table; public TextView title; }
------解决方案--------------------
这个问题很深奥啊
------解决方案--------------------
------解决方案--------------------
把TextView 设成Button 的tag,
或者
public void onClick(View v)
{
TextView textView = (TextView) v.getParent().findViewById(R.id.textview)
textView.setText("Test");
}
Button
------解决方案--------------------
------解决方案--------------------
在getView里做相应处理就行了。
------解决方案--------------------
http://blog.csdn.net/aomandeshangxiao/article/details/6643831 看一下我的这个博客吧 对你应该有用。看明白 你的问题应该能够解决了。
------解决方案--------------------
帮顶 .