我有一个扩展Gallery的视图(为了创建一个封面流程)。 现在我需要在顶部显示当前所选的标题(说话:前面显示的标题)。
到目前为止,这没问题,因为我可以使用:
public void onItemSelected(AdapterView<?> arg0, View arg1, int position, long arg3) {
if(mSpinnerAdapter.getItem(position)!=null) {
mSelectedTextView.setText((CharSequence) ((MyDataItem)mSpinnerAdapter.getItem(arg2)).getName());
}
}
数据来自Web服务,因此速度很慢,因此只要未加载数据,我就会显示进度条。我这样做是通过告诉适配器在“getView(..)”中提供进度条,在“getCount()”中提供“1”,只要数据结构没有完全加载(因此if(mSpinnerAdapter。上面代码中的getItem(position)!= null)。
现在的问题是:当加载来自Web的数据时,我在适配器上调用onDatasetChanged()并更新库视图(可以工作),但不调用onItemSelected()。这样做的结果是没有为第一个项目设置标题。
我该如何解决这个问题?或者我的技术是否一共显示进度条错误?
谢谢!