2011-04-20 1 views

답변

4

이 작업을 시도 할 수 있습니다 :

public class buttonWithList extends ListActivity { 
    /** Called when the activity is first created. */ 
    String[] items={"azhar","j"}; 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     setListAdapter(new bsAdapter(this)); 


    } 
    public class bsAdapter extends BaseAdapter 
    { 
     Activity cntx; 
     public bsAdapter(Activity context) 
     { 
      // TODO Auto-generated constructor stub 
      this.cntx=context; 

     } 

     @Override 
     public int getCount() 
     { 
      // TODO Auto-generated method stub 
      return items.length; 
     } 

     @Override 
     public Object getItem(int position) 
     { 
      // TODO Auto-generated method stub 
      return items[position]; 
     } 

     @Override 
     public long getItemId(int position) 
     { 
      // TODO Auto-generated method stub 
      return items.length; 
     } 

     @Override 
     public View getView(final int position, View convertView, ViewGroup parent) 
     { 
      View row=null; 
      // TODO Auto-generated method stub 
      /*if(convertView==null) 
      { 

      }*/ 
       LayoutInflater inflater=cntx.getLayoutInflater(); 
       row=inflater.inflate(R.layout.row, null); 
       TextView tv=(TextView)row.findViewById(R.id.txtRow); 
       Button btn=(Button)row.findViewById(R.id.btnRow); 
       tv.setText(items[position]); 
       btn.setOnClickListener(new OnClickListener(){ 

        @Override 
        public void onClick(View v) { 
         // TODO Auto-generated method stub 
         onListItemClick(this, this, position, null); 
        } 
        }); 


      return row; 
     } 

     protected void onListItemClick(OnClickListener onClickListener, 
       OnClickListener onClickListener2, int position, Object object) { 
      // TODO Auto-generated method stub 
      //Toast.makeText(this, items[position], 3000); 
      System.out.println(items[position]); 
     } 
    } 
} 
+1

데모 프로젝트 wiyh xml 코딩과 일종의 작업 onitemclicklistener 및 버튼 클릭을 제공 할 수 있습니까? – Hitesh

1

당신은 ListAdapter를 구현해야합니다. 이 객체는 각 행의 요소를 정의합니다. 중독에서는 ViewBinder을 사용하여 행의 동작을 지정합니다. 따라서 모든 행에 버튼을 추가하고 ViewBinder을 사용하여 onClickItemListener를 설정합니다.