2012-04-10 1 views
1

는 내가있는 gridview와 달력, 그래서 작은 블록 (일)로 일정을 작성하는 것은 다음과 같습니다정수로 shape drawable을 추가하는 방법은 무엇입니까?

R.id.calendar_day_gridcell XML 파일에서 구분되어
adapter = new GridCellAdapter(getApplicationContext(), R.id.calendar_day_gridcell, month, year); 

:

<Button 
     android:id="@+id/calendar_day_gridcell" 
     android:layout_gravity="center" 
     android:textColor="#000000" 
     android:background="@drawable/calendar_button_selector" 
     android:textAppearance="?android:attr/textAppearanceMedium" 
     android:layout_width="45dip" 
     android:layout_height="45dip"> 
    </Button> 
그것은 아주 잘 작동 ..

<selector 
    xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item 
     android:state_pressed="true" 
     android:drawable="@drawable/calendar_bg_orange" /> <!-- pressed --> 
    <item 
     android:state_focused="true" 
     android:drawable="@drawable/calendar_bg_orange" /> <!-- focused --> 
    <item 
     android:drawable="@drawable/grid_cell_sajat" /> <!-- default --> 
</selector> 

나는 약간의 경사와 모양 등이있는 grid_cell_sajat에서 :

그리고 calendar_button_selector 다른 XML 파일입니다. 프로그래밍 방식으로 이러한 작업을 수행하려면 어떻게해야합니까?

int colorsxx[] = { 0xff393939 , 0xffffffff }; 

     GradientDrawable g = new GradientDrawable(GradientDrawable.Orientation.BOTTOM_TOP, colorsxx); 
     g.setStroke(3, Color.BLACK); 
     GradientDrawable g2 = new GradientDrawable(GradientDrawable.Orientation.TOP_BOTTOM, colorsxx); 
     g2.setStroke(3, Color.BLACK); 
     g.setBounds(10, 10, 10, 10); 

     StateListDrawable stld = new StateListDrawable(); 
     stld.addState(new int[] {-android.R.attr.state_enabled}, g); 
     stld.addState(new int[] { android.R.attr.state_pressed }, g2); 

adapter = new GridCellAdapter(getApplicationContext(), R.id.calendar_day_gridcell, month, year); 

글쎄 'stld'

는 드로어 블이지만, 어댑터는 정수를 기대하고있다. 어댑터에 어떻게 설정합니까 아니면 어떻게 "정수 유형"으로 변환 할 수 있습니까?

미리 감사드립니다.

+0

배경으로 설정을 시도 했습니까? 대부분의 (모든?)보기에서 작동해야합니다. view.setBackground (R.drawable.calendar_button_selector) 사용하기; calendar_button_selector가 작동하려면 drawable 폴더에 있어야한다고 생각합니다. – erbsman

+0

이 '보기'에 대한 확신이 없습니다. grdcell adaper int 매개 변수에 무엇을 추가해야합니까? –

+0

잘 추가 된 setBackgroundDrawable() 같은 작품! –

답변

0

도움이 된 것을 기쁘게 생각합니다. 답변 : 배경으로 설정 했습니까? 대부분의 (모든?)보기에서 작동해야합니다. view.setBackground (R.drawable.calendar_button_selector) 사용하기; 나는 calendar_button_selector가 작동하도록 drawable 폴더에 있어야한다고 생각합니다.