2011-11-24 3 views
-1

하나의 이미지, 텍스트 및 버튼 하나가 포함 된 listview.i가 있습니다 .i는 버튼 목록을 클릭했을 때 버튼의 배경 이미지를 변경하고 싶습니다. 내 CustomAdapter.but의 getView 메소드에서 click 이벤트가 발생하여 배경 이미지를 변경할 수 없습니다. 도와주세요.버튼 변경 버튼을 클릭했을 때 ListView에 배경이 있음

다음은 어댑터의 getView() 메소드에 대한 내 코드입니다.

public View getView(final int position, View convertView, ViewGroup parent) 
{ 
    View v = convertView; 
    ViewHolder holder = null; 

    v = vi.inflate(R.layout.row_lv_operator, null); 
    tvOperatorname=(TextView) v.findViewById(R.id.tvOperatorName); 
    ivOperatorIcon=(ImageView)v.findViewById(R.id.ivOperatorIcon); 
    btnAddToFavourite=(Button)v.findViewById(R.id.btnFavourite); 
    tvOperatorname.setText(values[position]); 
    ivOperatorIcon.setImageResource(icons[position]); 
    //holder.ivOperatorIcon.setTag(values[position]); 
    btnAddToFavourite.setOnClickListener(new OnClickListener() 
    {       
     public void onClick(View arg0) 
     { 
       **btnAddToFavourite.setBackgroundDrawable(getResources().getDrawable(R.drawable.favourite_marked));** 
       Toast.makeText(getApplicationContext(), "hi",Toast.LENGTH_SHORT).show(); 

     } 
    }); 

    eturn v; 
} 
+2

대신 btnAddToFavourite.setBackgroundDrawable 시도 arg0.setBackgroundDrawable – SERPRO

+0

내 친구에게 감사드립니다 ... 그 일을 ... 감사합니다 4 날 안내 ... 신의 축복. –

답변

3

나는 무엇을 당신의 일을하려고하는 것이 아니라

public void onClick(View arg0) 
{ 
((Button) arg0).setBackgroundDrawable(.... 

같은 것을 믿습니다 .. 메신저하지 착각보기 클래스는 setBackgroundDrawable 가지고 있지만 아이디어는 일반 사용자가 onclicked보기를 사용해야하고 있지 않은 경우 btnAddToFavourite

+2

+1 - 목록이 스크롤되면 색이 바뀝니다. 또는 그가'ViewHolder'를 사용할 경우에는 이상한 결과를주게됩니다. –

+0

내 친구 덕분에 고맙습니다. 도움을 계속 ... 해답을 얻었습니다. 신의 축복을드립니다. –

관련 문제