이전글 필요한 분.

2012/02/08 - [Android Study] - Android custom list 만들기 + separate 넣기 3편 

이래 저래 다 완성 하고 나서 click event나 focus event 처리가 문제라면...
아래와 같이 처리하면 됨.

IconAdapter class 내부에 다음과 같은 메소드를 override 해주면됨

         @Override
        public boolean isEnabled(int position) {
            if (position == SEPARATE_POSITION) {
                return false;
            } else {
                return super.isEnabled(position);
            }
        }

후후~ 수고 하셨고 퍼갈때 댓글이나 좀 남겨 주이소...
이전글 필요 한 사람.
2012/02/08 - [Android Study] - Android custom list 만들기 + separate 넣기 1편
2012/02/08 - [Android Study] - Android custom list 만들기 + separate 넣기 2편 

 
자 이제 요롷게 구분선을 하나 넣을 계획 임. (1, 2편 모르면 말짱 황임!! 황!!)
이힛~ 
이제 부터 1편에 있던 java source를 수정 합니다.
수정은  IconAdapter class 만 합니다.
 


기존 code
      @Override
        public int getCount() {
            return mIconArrayList.size();
        }

 수정 code
        @Override
        public int getCount() {
            return mIconArrayList.size() + 1;
        } 


기존 code
 @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            if (convertView == null) {
                convertView = getLayoutInflater().inflate(R.layout.icon_list_item, parent, false);
            }

            Iconinfo info = mIconArrayList.get(position);
            ((TextView) convertView.findViewById(R.id.text1)).setText(info.text);
            ((ImageView) convertView.findViewById(R.id.icon)).setImageResource(info.icon);
            return convertView;
        }

수정 code
@Override
        public View getView(int position, View convertView, ViewGroup parent) {
            if (convertView == null) {
                convertView = getLayoutInflater().inflate(R.layout.icon_list_item, parent, false);
            }

            if (position == SEPARATE_POSITION) {
                ImageView iamge = new ImageView(AndroidListActivity.this);
                iamge.setScaleType(ScaleType.FIT_XY);
                iamge.setImageResource(android.R.drawable.title_bar);
                convertView = iamge;
            } else {
                convertView = getLayoutInflater().inflate(R.layout.icon_list_item, parent, false);
                Iconinfo info = mIconArrayList.get(getRealPosition(position));
                ((TextView) convertView.findViewById(R.id.text1)).setText(info.text);
                ((ImageView) convertView.findViewById(R.id.icon)).setImageResource(info.icon);
            }
            
            return convertView;
        }
 

추가 code
        private static final int SEPARATE_POSITION = 3;
        private int getRealPosition(int position) {
            if (position < SEPARATE_POSITION) {
                return position;
            } else {
                return position-1;
            }
        }

정상적으로 잘 되었다면 저~어기 위에 그림처럼 될꺼임~
근데 여기 까지하고 click event 물리면 대략 난감한 상황이 발생 할꺼임 그건 담편에!! 

+ Recent posts