gpt4 book ai didi

android - 从我的适配器中刷新 ExpandableListView

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:05:24 26 4
gpt4 key购买 nike

我只找到一个类似的问题,但对我没有帮助。我希望你能帮助我,因为我被困住了。

这是我的自定义适配器(只有相关部分):

MyExpandableListAdapter:

public class MyExpandableListAdapter extends BaseExpandableListAdapter {

//...

@Override
public View getChildView(int groupPosition, int childPosition,
boolean isLastChild, View view, ViewGroup parent) {
ChildInfo childInfo = (ChildInfo) getChild(groupPosition, childPosition);
if (view == null) {
LayoutInflater infalInflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
view = infalInflater.inflate(R.layout.prisustva_detaljno_child_row,
null);
}

Button delete = (Button) view.findViewById(R.id.delete);
delete.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
RelativeLayout Rl = (RelativeLayout) v.getParent();
TextView id = (TextView) Rl.findViewById(R.id.id_prisustvo);
PrisustvaAdapter deleteByID = new PrisustvaAdapter(context);

deleteByID.openToWrite();
deleteByID.openToRead();
deleteByID.deleteID(id .getText().toString());
deleteByID.close();

Toast.makeText(context, "Successfully deleted!",
Toast.LENGTH_LONG).show();
}
});

// ...
return view;
}

// ...
}

如您所见,我的 ExpandableListView 的每个子行中都有一个按钮。当我单击该按钮时,它会触发我数据库中的删除过程,您还可以看到我必须从我的适配器中进行删除,因为只有在那里我才能为子行中的按钮创建单击事件。我想知道当我从数据库中删除数据时如何刷新我的 ExpandableListView?我必须从适配器内部进行吗?如果不能,还有什么选择?

P.S:如果你们需要更多代码,请告诉我。

最佳答案

如果没有看到您的其余代码(您如何实例化您的 BaseExpandableAdapter)但在您的 末尾调用 notifyDatasetChanged(),我无法确定onClick() 方法应该可以解决问题。

关于android - 从我的适配器中刷新 ExpandableListView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15351452/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com