gpt4 book ai didi

android - 可扩展 ListView 自动刷新?

转载 作者:行者123 更新时间:2023-11-30 02:19:51 27 4
gpt4 key购买 nike

我的场景是,我有一个可扩展 ListView ,在列表中动态添加我和 child 。我的子布局就是这样。

enter image description here

当我点击相应项目的编辑按钮时,我打开对话框从用户那里获取输入,然后点击更新相应的详细信息更新到数据库中。

现在从数据库中检索所有数据并设置为可扩展 ListView 。希望您了解我的情况。

这是我的更新对话框代码。

try {
alertDialogBuilder.setCancelable(false);
alertDialogBuilder.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
if (mET_asset_amount.getText().toString().isEmpty() || mET_asset_return_pretext.getText().toString().isEmpty() || mET_asset_texrate.getText().toString().isEmpty()) {
// mErrorMessage.setVisibility(View.VISIBLE);
Toast.makeText(mContext, "Please fill detail", Toast.LENGTH_SHORT).show();
} else {
assetTable = new AssetTable(mContext);
UtilClass.asset_amount = Integer.parseInt(mET_asset_amount.getText().toString());
UtilClass.asset_return_pretext = Integer.parseInt(mET_asset_return_pretext.getText().toString());
UtilClass.asset_texrate = Integer.parseInt(mET_asset_texrate.getText().toString());
Log.e("Inputed data", UtilClass.asset_amount + " " + UtilClass.asset_return_pretext + " " + UtilClass.asset_texrate);
assetTable.assetUpdate(assetChild.getmAssetName());

}

}
});
alertDialogBuilder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});

alertDialogBuilder.show();

} catch (Exception e) {
Log.e("Error in add asset", e.toString());
}

那是我的适配器中的代码。它可以正确更新数据,但不会刷新可扩展 ListView 。

我的问题是,当我点击“确定”按钮更新对话框时,我想刷新可扩展 ListView 。我陷入了那个问题。请任何人提供帮助。

非常感谢。

最佳答案

在对话框的“确定”按钮中完成更新操作后。您需要再次获取 Adapter 的 List/Array 中的数据并调用 notifyDatasetChanged() 方法。

例如:

alertDialogBuilder.setPositiveButton("Ok", new       DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
if(mET_asset_amount.getText().toString().isEmpty()
|| mET_asset_return_pretext.getText().toString().isEmpty()
|| mET_asset_texrate.getText().toString().isEmpty()) {
// mErrorMessage.setVisibility(View.VISIBLE);
Toast.makeText(mContext, "Please fill detail", Toast.LENGTH_SHORT).show();
} else {
assetTable = new AssetTable(mContext);
UtilClass.asset_amount = Integer.parseInt(mET_asset_amount.getText().toString());
UtilClass.asset_return_pretext = Integer.parseInt(mET_asset_return_pretext.getText().toString());
UtilClass.asset_texrate = Integer.parseInt(mET_asset_texrate.getText().toString());
Log.e("Inputed data", UtilClass.asset_amount + " " + UtilClass.asset_return_pretext + " " + UtilClass.asset_texrate);
assetTable.assetUpdate(assetChild.getmAssetName());

//Fetch the data from the database again in the Adapter/add the new item
adapter.notifyDatasetChanged();

}

}
});

希望这对您有所帮助。

关于android - 可扩展 ListView 自动刷新?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28758496/

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