这是我的用例。我有一个listview和textview的活动。 textview是listview上所有数字的总和,listview包含所有数字。我有一个针对这种情况的自定义适配器。
在列表视图的每一行上,我都有一个按钮。此按钮将更改此行上的数字。 我想做的是:
这是一个简化的例子。实际上,我还有一个约束,即我有一个数据模型来表示每个角色的数据。我无法将数据模型扩展到DataSetObserver。
任何帮助?
答案 0 :(得分:6)
你应该创建一个监听器,它监听你的增量按钮上的触摸,并在里面调用扩展你创建的接口的类的方法。 为了方便起见,您可以在适配器中使用:
public interface OnIncrementListener{
onNumberIncremented();
}
private OnIncrementListener mListener;
//This is inside getView method of your adapter
myButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
mListener.onNumberIncremented();
}
});
然后你的活动
public class MyActivity extends Activity implements OnIncrementListener {
//inside onCreate
myAdapter.setOnIncrementListener(this);
//end onCreate
@Override
public void onNumberIncremented() {
//Change value of your TextView here
}
}