위 링크는 안펍의 고또님이 예제로 올려주신 달력 소스 입니다.
저걸 토대로 약간 수정을 해보려고 하는데요, .
초반에
public class gsCalendar extends Activity 에서
float m_displayScale ; /// 화면 사이즈에 따른 텍스트 크기 보정값 저장용
float m_textSize ; /// 텍스트 사이즈(위 라인의 변수와 곱해짐)
float m_topTextSize ; /// 요일텍스트 사이즈(역시 보정값과 곱해짐)
int m_tcHeight = 50 ; /// 요일 들어가는 부분 한칸의 높이
int m_cWidth = 50 ; /// 한칸의 넓이
int m_cHeight = 50 ; /// 한칸의 높이
int m_lineSize = 1 ; /// 경계선의 굵기
이 변수들이, 달력의 크기[레이아웃]값을 지정해주는 것인데요..
핸드폰 마다 다른 크기로 주고싶어서, 값을 변경하려는데 어떻게 해야 할지 모르겠습니다.
일단 각 핸드폰의 deviceWidth,deviceHeight는 구했는데요.. 저 애들을 함수 안에 집어넣으면, 에러가 발생하더라구요.
밖으로 빼내야 다른 함수에서 저 값을 사용할 수있는 것 같습니다;
저 밑에 보면,
public void setCalendarSize( int width, int height )
{
m_cWidth = ( width - ( m_lineSize * COLS - 1 ) ) / COLS ;
m_cHeight = ( height - ( m_lineSize * ROWS - 1 ) ) / ROWS ;
m_tcHeight = ( height - ( m_lineSize * COLS - 1 ) ) / COLS ;
}
이런식으로 달력의 한칸의 높이,길이가 이렇게 사용되는데.. 함수사용에 미숙해서 어떤식으로 기기마다 다른 값들(빨간색)을 넘겨줘야 하는지 모르겠습니다..ㅠㅠ; 혹시 함수나 다른 도움ㅇ ㅣ될만 것이있으면 조언 부탁드립니다..