안녕하세요.


지난번 질문에서 도움을 좀 얻고 해결하고 또 하나의 난관에 봉착해서 여쭈어보고자 글 올립니다.


1. 커스텀 리스트뷰로 구성

  - 체크박스 포함


2. 체크박스를 클릭하였을때 TextView의 어떤값을 변경하기 위함입니다.


 여러가지 검색하여 adapter 에 알려주어 다시 읽어들여야한다고 하셔서 구현해보았지만 


 통 값이 변경이 안되어지네요 소스코드 올려보겠습니다

 

 로그 값 등 불필요한 소스코드는 제거하였습니다(보시기에 불편할거 같아서)


 	public View getView(int position, View convertView, ViewGroup parent){
		View v = convertView;
		if(v ==null || convertView.getId() != R.layout.rowchange){
 		   holder = new ItemHolder();
			LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
			v = vi.inflate(R.layout.rowchange, null);
			holder.tv1 = (TextView)v.findViewById(R.id.cust1);
			holder.tv2 = (TextView)v.findViewById(R.id.cust2);
			holder.tv3 = (TextView)v.findViewById(R.id.cust3);
			holder.tv4 = (TextView)v.findViewById(R.id.cust4);
			holder.tv5 = (TextView)v.findViewById(R.id.cust5);
		
			change1 = (CheckBox)v.findViewById(R.id.cust_1);
			
			 v.setTag(holder);
			 v.setId(R.layout.rowchange);			
		}
		else {
			holder = (ItemHolder) v.getTag();
		}
		XmlData xmlData = (XmlData) items.get(position);
		if(xmlData != null){
		
			holder.tv1.setText(xmlData.F_FNm1);	
			holder.tv2.setText(xmlData.F_FBefDt1);
			holder.tv3.setText(xmlData.F_FAmt1);
			
			if(holder.tv4.getTag() != null){
				if(nFormLoad == true) {
			        xmlData.F_FCDt1 = holder.tv4.getTag().toString();
					//String inputValue = holder.tv4.getTag().toString() ;  
			        holder.tv4.setText(xmlData.F_FCDt1);	
				}
			} else if (holder.tv4.getTag() == null) {
				if(nFormLoad == true) {
				} else if(nFormLoad == false) {
					String inputValue1 = xmlData.F_FCDt1;
					holder.tv4.setText(inputValue1);
				}
			}
			holder.tv5.setText(xmlData.F_FNm2);	
		
			}
		
		if (change1 != null) {
			change1.setOnCheckedChangeListener(new OnCheckedChangeListener() {
				public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
					if (isChecked) {
						
						//addData(1);
					   	nFormLoad = true;
				    	
			        	holder.tv4.setTag("11-07-26");
						
			            ((CustFilterChange)context).runOnUiThread(new Runnable() {
			                public void run() {
			                    adapter.notifyDataSetChanged();
			                }   
			            });						
					} else {
					}
				}
			});
			}
		return v;

아님 제가 개념을 잘못잡고 있는건지


체크박스를 클릭하면 TextView의 값이 변하지 않는게 정상적인건지...


조언좀 부탁드립니다.