GridView:按位置获取视图

我正在使用网格视图来显示月份日历。 当我在日历上触摸date时,相应的单元格会通过更改其背景和文本颜色来突出显示。 一切都像魅力一样,除非我select一个新的date,我不能不突出显示一个单元格。

当我点击一个date,我记得的位置,所以当我select一个新的我知道我以前点击:

protected OnClickListener onClicThisMonthDate(final int position) { return new OnClickListener() { @Override public void onClick(View v) { if(prevDateSelected > -1 ) { //Get the view by the oldPosition //Change its background and text color } prevDateSelected = position; TextView casecal = (TextView) v.findViewById(R.id.case_cal); casecal.setBackgroundColor(Color.rgb(93, 94, 94)); casecal.setTextColor(Color.WHITE); } }; } 

有没有一个解决scheme来获得他的立场的观点? 什么是最有效的方式来select一个单元格,并取消所有其他select? 注意:通过“select一个单元格”我的意思是突出显示它,通过改变它的风格。

  • 在使用StaggeredGridLayoutManager时停止移动项目
  • android网格视图的项目从右到左
  • 在android中删除GridView中的额外填充
  • 具有不同单元格宽度的RecyclerView Grid的LayoutManager
  • Android:我如何加快GridView的滚动速度?
  • 如何以编程方式指定android:listSelector =“@ null”?
  • 在Android中ScrollView内部的GridView问题
  • Gridview多行Textview切断
  • ViewGroup.getChildAt返回组中指定位置的视图。

    GridView.setSelectionselect位置处的视图并取消select其他视图。