안드로이드 개발 질문/답변
(글 수 45,052)
리스트 뷰를 이용해서 여러가지 디데이를 표시하려고 하는중입니다.
리스트를 클릭하면 toast로 "현재날짜로부터 ??일이 지났습니다"라고 표시를 하려고 해보는중입니다.
public String getDate ( int iDay ) { Calendar temp=Calendar.getInstance ( ); StringBuffer sbDate=new StringBuffer ( ); temp.add ( Calendar.DAY_OF_MONTH, iDay ); int nYear = temp.get ( Calendar.YEAR ); int nMonth = temp.get ( Calendar.MONTH ) + 1; int nDay = temp.get ( Calendar.DAY_OF_MONTH ); sbDate.append ( nYear ); sbDate.append ( "/" ); if ( nMonth < 10 ) sbDate.append ( "0" ); sbDate.append ( nMonth ); sbDate.append ( "/" ); if ( nDay < 10 ) sbDate.append ( "0" ); sbDate.append ( nDay ); return sbDate.toString ( ); }
날짜 계산하는부분인데 iDay에 들어가는 값을 불러와서 위에 ??부분에 iday값을 넣으려고 합니다.
class MyListAdapter extends BaseAdapter { Context maincon; LayoutInflater Inflater; ArrayList<MyItem> arSrc; int layout;
public MyListAdapter(Context context, int alayout, ArrayList<MyItem> aarSrc) { maincon = context; Inflater = (LayoutInflater)context.getSystemService( Context.LAYOUT_INFLATER_SERVICE); arSrc = aarSrc; layout = alayout; }
public int getCount() { return arSrc.size(); }
public String getItem(int position) { return arSrc.get(position).Name; }
public long getItemId(int position) { return position; }
// 각 항목의 뷰 생성 public View getView(int position, View convertView, ViewGroup parent) { final int pos = position; if (convertView == null) { convertView = Inflater.inflate(layout, parent, false); } TextView txt = (TextView)convertView.findViewById(R.id.text); txt.setText(arSrc.get(position).Name);
Button btn = (Button)convertView.findViewById(R.id.btn); btn.setOnClickListener(new Button.OnClickListener() { public void onClick(View v) { String str = "현재날짜로 부터"+ arSrc.get(pos).Name + "이 되었습니다."; Toast.makeText(maincon, str, Toast.LENGTH_SHORT).show(); } });
return convertView; } }
지금 이것저것 소스를 조합해서 해보는중에 arSrc.get(pos).Name 부분에 iDay를 어떻게 넣어야할지 알려주시면 감사하겠습니다.