textview的setbackground无法正常工作

时间:2015-01-27 08:04:17

标签: java android calendar textview

我使用ExtendedCalendarView绘制年月日 这是ExtendedCalendarView enter link description here

的链接

现在我以编程方式获取日历,然后选择我想要的日期,应该更改其背景图像 就像

ExtendedCalendarView extendedCalendarView = (ExtendedCalendarView) findViewById(R.id.calendar);
GridView calendar = (GridView) extendedCalendarView.findViewById(999);
calendar.setOnItemClickListener(new OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> adapter, View view, int pos,long id) {
        TextView dayTV = (TextView)view.findViewById(R.id.textView1);
        dayTV.setBackgroundResource(R.drawable.ic_launcher);
    }   
}

现在我面临问题,问题是设置背景,当API级别小于17时,它似乎不起作用,选择的单元格我想要选择但其背景不会改变。 它使用XML  android:background="@drawable/ic_launcher" 并且没有问题,但是我有一些限制因为那天无法选择,这就是我无法使用XML的原因。 当API少于17时,有没有办法改变背景

谢谢

1 个答案:

答案 0 :(得分:1)

// your code looks good if textview is inside GridView;
This code is for textview outside:

ExtendedCalendarView extendedCalendarView = (ExtendedCalendarView) findViewById(R.id.calendar);
GridView calendar = (GridView) extendedCalendarView.findViewById(999);
TextView dayTV = (TextView) findViewById(R.id.textView1);

calendar.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView adapter, View view, int pos,long id) {
dayTV.setBackgroundResource(R.drawable.ic_launcher);
} 
}