gpt4 book ai didi

android - 如何在 Android 中一一显示来自数据库的字符串响应?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:07:56 25 4
gpt4 key购买 nike

我是 android 的新开发者。我正在我的应用程序中使用 soap 对象与 .net 数据库服务进行通信。我正在从数据库服务器获取字符串形式的响应。但我的 Intent 是,当我从数据库服务器获取一个字符串作为响应时,然后立即将其视为 TextView ,类似地,我正在获取编码字符串的图像。如何立即获取响应作为 View 。我写的代码如下:

String xml="<spGetUserMessages><SearchLocation></SearchLocation><LoginUserID>"+Userid+"</LoginUserID></spGetUserMessages>"; 

我正在将请求作为 XML 发送到数据库服务器

数据库服务器的响应在列表中:

 List<MessageClass> response=new ParseXml().getUserMessages(new Generic().getMessages(xml));

String messages=new String[response.size()];

for(int i=0;i<response.size();i++)
{

//the response values are saved in messages array
messages[i]=response.get(i).getmessage();

}

我已经在该类中编写了一个基本适配器类,我们有一个方法 getView 我已经实现如下:

    public View getView(int position, View convertView, ViewGroup parent) {
View vi=convertView;


if(convertView==null)
vi = inflater.inflate(R.layout.item, null);



TextView text=(TextView)vi.findViewById(R.id.text);;
ImageView image=(ImageView)vi.findViewById(R.id.image);

Log.v("rrrrrrrrrr", "rrrrrrrr"+messages[position]);

text.setText(messages[position]);
}

根据上面的代码,我一次显示所有消息。但在这种情况下,响应需要时间然后我得到黑屏。在这里,我的 Intent 是当我收到一个字符串响应时,我将在下一次类似地将该字符串作为 TextView 查看,直到响应大小完成。

最佳答案

您可以做的是在不等待响应的情况下显示 Listview,并从后台线程将响应添加到 messages 并调用

mAdapter.notifyDatasetChanged();

这是 LazyLoading 的概念,我希望它能起作用

更新

runOnUiThread(new Runnable() {
public void run() {
adapter.notifyDataSetChanged();
}
});

关于android - 如何在 Android 中一一显示来自数据库的字符串响应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7397059/

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