在 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
班级中。请告诉我如何禁用用户单击下载的按钮。