2011-11-24 62 views
0

我有含活性-A像和列表视图。 当我点击listview时,它必须移动到另一个活动-B。采摘从列表视图图像和投入的ImageView只要点击发生在列表视图的Android

在活动-B,一个ImageButton的是存在的。 当我在activity-A中点击listview中的任何项目时,对应于该点击项目的图像必须显示在activity-B的imageButton中

我搜索了更多,但没有得到正确的答案。

请建议我韧皮答案来解决这个问题提前

谢谢...

+0

你可以添加列表视图适配器代码? – aNi

回答

0

,你可以在这里获得关于该问题的一些答案:Get/pick an image from Android's built-in Gallery app programmatically

一般情况下,假设你有将图像保存在某个位置,您可以发送一个意图以便通过图库查看它,或者您可以打开文件,读取它,然后将其设置为ImageView。

希望这会有所帮助!

+0

嗨,感谢您的回复。已经将图像加载到列表视图中。如果我点击列表的手段,图像必须发送到下一个活动的imagebutton ..我试图通过采取身份证,位置,但没有用....有没有什么办法只从图像的参考列表视图,并发送图像的副本另一项活动。 –

+0

当你下载图像时,你可以使用image_url,image将它们存储在(即)一个HashMap中。然后,当点击列表项时,您可以获取列表项的位置或对所点击的特定图像的引用,并发送该参考。没有理由将整个图像对象发送给其他Activity。 –

+0

嗨,朋友....谢谢。你能再给我一个建议吗, –

2

我希望下面的代码对你有用。

1 Actvity

ListView listView; 
int total_data = 11; 

// references to our images 
private Integer[] mThumbIds = { R.drawable.sample_2, R.drawable.sample_3, 
     R.drawable.sample_4, R.drawable.sample_5, R.drawable.sample_6, 
     R.drawable.sample_7, R.drawable.sample_0, R.drawable.sample_1, 
     R.drawable.sample_2, R.drawable.sample_3, R.drawable.sample_4, 
     R.drawable.sample_5, R.drawable.sample_6, R.drawable.sample_7, 
     R.drawable.sample_0, R.drawable.sample_1, R.drawable.sample_2, 
     R.drawable.sample_3, R.drawable.sample_4, R.drawable.sample_5, 
     R.drawable.sample_6, R.drawable.sample_7 }; 

/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    listView = (ListView) findViewById(R.id.listView1); 
    listView.setAdapter(new ImageAdapter()); 

    listView.setOnItemClickListener(new OnItemClickListener() { 

     @Override 
     public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, 
       long arg3) { 
      // TODO Auto-generated method stub 

      Bitmap bitmap = BitmapFactory.decodeResource(getResources(), 
        mThumbIds[arg2]); 

      Intent intent = new Intent(StackTestActivity.this, 
        StackTestActivity1.class); 
      intent.putExtra("bitmap", bitmap); 

      startActivity(intent); 

     } 
    }); 
} 

private class ImageAdapter extends BaseAdapter { 

    public ImageAdapter() { 

    } 

    public int getCount() { 
     return mThumbIds.length; 
    } 

    public Object getItem(int position) { 
     return position; 
    } 

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

    public View getView(int position, View convertView, ViewGroup parent) { 

     View v; 
     if (convertView == null) { 
      LayoutInflater li = getLayoutInflater(); 

      v = li.inflate(R.layout.customview, null); 

     } else { 
      v = convertView; 
     } 

     TextView text = (TextView) v.findViewById(R.id.textView1); 
     text.setText("Image Text"); 

     ImageView icon = (ImageView) v.findViewById(R.id.imageView1); 
     icon.setImageResource(mThumbIds[position]); 

     return v; 
    } 

} 

第二Actvity

ImageView button; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    // TODO Auto-generated method stub 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.second); 

    button=(ImageView)findViewById(R.id.imageView1); 

    Bundle extra=getIntent().getExtras(); 

    if(extra!=null) 
    { 
     Bitmap bitmap = (Bitmap) getIntent().getParcelableExtra("bitmap"); 
     button.setImageBitmap(bitmap); 
    } 

} 
+0

非常感谢你...... ..请你可以为此建议:在我的应用程序中,我有一个谷歌地图。我做了编程...在模拟器我也得到谷歌地图,但当我加载该应用程序在平板电脑,应用程序加载成功...它要求登录名和密码也。在此之后,谷歌地图必须打开,在平板电脑,其显示错误“应用程序意外停止”,但在模拟器其工作非常好....任何建议..谢谢 –