2012-08-02 129 views
0

怎么样?我有select1和select2静态string []变量,并声明了myval,myvals两个全局变量。 如果我从列表项目中选择项目,那么项目可见并且下一个活动自定义listView;如何从一个Activity自定义listview到另一个activity自定义listView?

第一项活动:

 l1.setOnItemClickListener(new OnItemClickListener() { 

       public void onItemClick(AdapterView<?> parent, View view, 
       int position, long id) { 


//When clicked, show a toast with the TextView text 
Toast.makeText(HomeActivity.this, "SELECTED :: " + "item "+ select1[position] + " " + "price"+ select2[position], 
Toast.LENGTH_SHORT).show(); 


String s1=select1[position]; 
GlobalClass.myval.add(s1); 

String s2=select2[position]; 
GlobalClass.myvals.add(s2); 
} 

高效适配器:

 public static class EfficientAdapter extends BaseAdapter{ 
    private LayoutInflater mInflater; 
    public EfficientAdapter(Context context){ 
     mInflater=LayoutInflater.from(context); 


    } 
    public int getCount() { 
    return select1.length; 
    } 
    public Object getItem(int position) { 
    return position; 
    } 
    public long getItemId(int position) { 
    return position; 
    } 
    public View getView(int position, View convertView, ViewGroup parent) { 
     ViewHolder holder; 
     if(convertView==null){ 
      convertView=mInflater.inflate(R.layout.list_row,null); 
      holder=new ViewHolder(); 
      holder.Text1=(TextView) convertView.findViewById(R.id.textView1); 
      holder.Text2=(TextView) convertView.findViewById(R.id.textView2); 
      convertView.setTag(holder); 
      } 
     else{ 
      holder=(ViewHolder) convertView.getTag(); 

     } 
     holder.Text1.setText(select1[position]); 
     holder.Text2.setText(select2[position]); 
     return convertView; 
    } 
    static class ViewHolder{ 
     TextView Text1; 
     TextView Text2; 
     } 

下一个活动:

  private static class EfficientAdapter extends BaseAdapter{ 
    private LayoutInflater mInflater; 
    public EfficientAdapter(Context context){ 
     mInflater=LayoutInflater.from(context); 

    // implementation of EfficientAdapter 
    } 
    public int getCount() { 

     return HomeActivity.select1.length; 
    } 
    public Object getItem(int position) { 

     return position; 
    } 
    public long getItemId(int position) { 

     return position ; 
    } 
    public View getView(int position, View convertView, ViewGroup parent) { 
     ViewHolder holder; 

    if(convertView==null){ 
      convertView=mInflater.inflate(R.layout.list_ticket, null); 
      holder=new ViewHolder(); 
      //holder.Text1=(TextView) convertView.findViewById(R.id.textView1); 
      holder.Text2=(TextView) convertView.findViewById(R.id.textView2); 
      holder.Text3=(TextView) convertView.findViewById(R.id.textView3); 
      convertView.setTag(holder); 
     } 
     else{ 
       holder=(ViewHolder)convertView.getTag(); 
      } 

      holder.Text2.setTag(GlobalClass.myval); 
      holder.Text3.setTag(GlobalClass.myvals); 



     return convertView; 
    } 
    static class ViewHolder{ 
     TextView Text1; 
     TextView Text2; 
     TextView Text3; 

    } 
} 
+0

不需要你的适配器代码,只需要知道哪些“之类的项目/价值类型“。以及你如何开始其他活动。也许如果它是多选列表视图? – 2012-08-02 07:16:19

+0

String []值,转到另一个用于按钮的活动点击 – USER5762 2012-08-02 07:18:03

+0

它应该在那附近:)记得接受答案 – 2012-08-02 13:07:05

回答

0

对于从一个活动切换到另一个。考虑intents Basicly是这样的:你在onCreate方法开始

Intent intent = new Intent(getContext(), ActivityToBeStarted.class); 
      intent.putExtra("messages", result); 
      startActivity(intent); 

在activty 2' 的方法:

String[] myStringArray = getIntent().getStringArrayExtra("messages"); 
相关问题