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'
는 드로어 블이지만, 어댑터는 정수를 기대하고있다. 어댑터에 어떻게 설정합니까 아니면 어떻게 "정수 유형"으로 변환 할 수 있습니까?미리 감사드립니다.
배경으로 설정을 시도 했습니까? 대부분의 (모든?)보기에서 작동해야합니다. view.setBackground (R.drawable.calendar_button_selector) 사용하기; calendar_button_selector가 작동하려면 drawable 폴더에 있어야한다고 생각합니다. – erbsman
이 '보기'에 대한 확신이 없습니다. grdcell adaper int 매개 변수에 무엇을 추가해야합니까? –
잘 추가 된 setBackgroundDrawable() 같은 작품! –