Android ListView仅显示应用重启后的数据

时间:2014-08-26 09:37:26

标签: android listview

我试图填写列表视图,其中包含以json格式接收和odata服务的数据。数据已被提取,可以使用getIODataEntry()进行访问。

我将相应的值附加到字符串以查看LogCat中的输出,然后拆分字符串以使用单个值填充listView。

ListView listView_CarrierCollection = null;
...

private void showData() {

    Log.d("debug", "log 1");

    String carrierCollection = "";

    for(int i=0; i<getIODataEntry().size(); i++) {
        carrierCollection += getIODataEntry().get(i).getPropertyValue("Carrname");
        carrierCollection += ";";
    }

    Log.d("debug", carrierCollection);

    ArrayList<String> list = new ArrayList<String>(Arrays.asList(carrierCollection.split(";")));
    ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(getActivity().getApplicationContext(), R.layout.custom_textview, list);
    listView_CarrierCollection.setAdapter(arrayAdapter);

    Log.d("debug", "log 2");
}

一切正常,但只有在我的设备之后才能解决问题。屏幕已关闭并再次打开或关闭并重新打开应用程序后。而是立即提示日志到logcat,但listView仅在重新打开应用程序后包含数据。

我错过了什么吗?每个提示都会受到赞赏!

编辑: 最后让它工作 - 原来它与上面发布的代码无关。我有一些听众,他们试图更新片段中的TextField。似乎MyFragment.textfield.setText("test");以某种方式阻止了任何进一步的操作。用runOnUiThread(new Runnable(){ ... })围绕它为我解决了这个问题,让整个事情发挥作用。

尽管如此,感谢您的想法和帮助!

1 个答案:

答案 0 :(得分:0)

迟到聚会,但将来可能会帮助其他人

就我而言,我在更新可变数组列表时没有呼叫class Main extends React.Component { render() { return ( <div> <h1> <Link to="/">Reduxtagram</Link> </h1> {React.cloneElement(this.props.children, this.props)} </div> ); } } class PhotoGrid extends React.Component { render() { return <div className="photo-grid">PhotoGrid</div>; } } class Single extends React.Component { render() { return <div className="single-photo">Single</div>; } } 。因此,只有在我反复调节时才起作用。但是在调用notifyDataSetChanged()之后,它照常工作。

希望它会有所帮助;)