2013-06-23 42 views
1

我有簡單的適配器顯示列表,將數據存入數組並將數據加載到列表中並將此列表傳遞給適配器。使用適配器強制關閉

@Override 
public View getView(int position, View convertView, ViewGroup parent) { 
    // TODO Auto-generated method stub 
    View rowView=convertView; 

    String[] data; 
    LayoutInflater inflater = context.getLayoutInflater(); 
    if(rowView==null){ 
      rowView = inflater.inflate(R.layout.list_inflator, null); 
      ViewHolder viewHolder = new ViewHolder(); 
      viewHolder.dishName= (TextView)rowView.findViewById(R.id.textView1); 
      viewHolder.dishPrice = (TextView)rowView.findViewById(R.id.textView2); 
      viewHolder.add=(Button)rowView.findViewById(R.id.add); 

      rowView.setTag(viewHolder); 
    } 
    data=dishes.get(position).split("-"); 
    Log.d("Data", data[0]+"///"+data[1]); 
    ViewHolder holder = (ViewHolder) rowView.getTag(); 
    holder.add.setTag(R.string.position,position); 

    if(data[0]!=null){ 
    holder.dishName.setText(data[0]); 
    holder.add.setTag(R.string.dishname, data[0]); 
    } 
    if(data[1]!=null){ 
     holder.dishPrice.setText(data[1]); 
     holder.add.setTag(R.string.dishprice, data[1]); 
    } 

    holder.add.setOnClickListener(context.addClick); 
    return rowView; 
} 
+0

任何logcat輸出的錯誤? – Opiatefuchs

+1

任何幫助將appriciated。 – user2243750

+0

你的問題到底是什麼? – Evilunclebill

回答

0

在加載數據時得到了錯誤的答案。

  case R.id.juice: 

      for (int i = 0; i < Dolci.length; i++) 
       dataList.add(Dolci[i]); 

      break; 

@Override 
public View getView(int position, View convertView, ViewGroup parent) { 
    // TODO Auto-generated method stub 
    View rowView=convertView; 

    String[] data; 
    LayoutInflater inflater = context.getLayoutInflater(); 
    if(rowView==null){ 
      rowView = inflater.inflate(R.layout.list_inflator, null); 
      ViewHolder viewHolder = new ViewHolder(); 
      viewHolder.dishName= (TextView)rowView.findViewById(R.id.textView1); 
      viewHolder.dishPrice = (TextView)rowView.findViewById(R.id.textView2); 
      viewHolder.add=(Button)rowView.findViewById(R.id.add); 

      rowView.setTag(viewHolder); 
    } 
    data=dishes.get(position).split("-"); 
    Log.d("Data", data[0]+"///"+data[1]); 
    ViewHolder holder = (ViewHolder) rowView.getTag(); 
    holder.add.setTag(R.string.position,position); 

    if(data[0]!=null){ 
    holder.dishName.setText(data[0]); 
    holder.add.setTag(R.string.dishname, data[0]); 
    } 
    if(data[1]!=null){ 
     holder.dishPrice.setText(data[1]); 
     holder.add.setTag(R.string.dishprice, data[1]); 
    } 


    return rowView; 
}