【发布时间】:2012-08-23 06:28:29
【问题描述】:
在 xml 中,我有 LinearLayout。
在里面我使用的是ExpandableListView。
每个展开项仅包含一个视图,即 GridView。
GridView cell 由三个 UI 组件组成,它们是 ImageView、TextView 和 Button。
我如何控制这三个 UI 组件如下,
public View getView(final int position, View convertView, ViewGroup parent) {
LayoutInflater layoutInflater = (LayoutInflater) imageAdapterContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
if (convertView == null) {
convertView = layoutInflater.inflate(R.layout.single_grid_item, null);
viewHolder = new ViewHolder();
viewHolder.singleImageView = (ImageView) convertView.findViewById(R.id.singleGridItem_imageView);
viewHolder.singleTextView = (TextView) convertView.findViewById(R.id.singleGridItem_textView);
viewHolder.singleDownloadButton = (Button) convertView.findViewById(R.id.singleGridItem_download_button);
}
}
// ViewHolder is a static nested inner class
一切正常。这意味着每个单元格都标识为不同的单元格。
它们有不同的图像,适当的TextView 标签和Button 点击事件也可以正常工作。
对于单击按钮,我使用了带有ProgressDialog 的下载。那也工作正常。
我想要的是在下载过程中禁用Button。
下载发生在单独的 AsyncTask 类中。
请告诉我如何禁用用户点击下载的按钮。
【问题讨论】:
标签: android button gridview expandablelistview layout-inflater