在Android中单击下一个/上一个按钮时显示完整图像
我是Android编程新手。 我正在创建一个非常简单的应用程序,其中我有5张以上的静态图片(存储在drawable文件夹中)。现在,我创建了一个活动,在gridView中显示所有图片。假设,如果我单击第二个位置图像,它将打开一个新的活动,以全尺寸(使用ImageView)模式显示该特定图像,并加上下一个/上一个按钮在图像上导航(用户无需仅从第一个图像开始,他/她可以从gridView中选择任何图像,然后导航将从该点开始)。 我的问题是,我不想将切换案例的数量与通过按钮导航的图像数量进行编码。是否有其他方法来实现所需的场景?或者我可以使用Android的任何其他功能来实现相同的效果 提前感谢 我也在添加我的代码(第一个活动): 公共类GridViewActivity扩展了活动{在Android中单击下一个/上一个按钮时显示完整图像,android,gridview,android-imageview,Android,Gridview,Android Imageview,我是Android编程新手。 我正在创建一个非常简单的应用程序,其中我有5张以上的静态图片(存储在drawable文件夹中)。现在,我创建了一个活动,在gridView中显示所有图片。假设,如果我单击第二个位置图像,它将打开一个新的活动,以全尺寸(使用ImageView)模式显示该特定图像,并加上下一个/上一个按钮在图像上导航(用户无需仅从第一个图像开始,他/她可以从gridView中选择任何图像,然后导航将从该点开始)。 我的问题是,我不想将切换案例的数量与通过按钮导航的图像数量进行编码。是否
@覆盖
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u grid\u视图);
GridView GridView=(GridView)findViewById(R.id.GridView);
setAdapter(新的ImageAdapter(this));
setOnItemClickListener(新的OnItemClickListener(){
public void onItemClick(AdapterView父视图、视图v、整型位置、长id){
//创造意图
Intent Intent=新的Intent(getApplicationContext(),FullImageActivity.class);
意向。额外(“图像”,位置);
星触觉(意向);
}
});
}
}
第二项活动:
public class GridViewActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_grid_view);
GridView gridview = (GridView) findViewById(R.id.gridView);
gridview.setAdapter(new ImageAdapter(this));
gridview.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
//Create an Intent
Intent intent = new Intent(getApplicationContext(), FullImageActivity.class);
intent.putExtra("image", position);
startActivity(intent);
}
});
}
公共类FullImageActivity扩展活动实现OnClickListener{
按钮;
int可绘制;
图像视图显示;
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u full\u image);
Intent=getIntent();
显示=(ImageView)findViewById(R.id.fullImageView);
ImageView ImageView=null;
字符串idName=“ivImage”;
int-id;
对于(inti=1;ii),我的目标是动态地获取硬编码的内容。
这不完全是你的应用类型,但我的答案背后的基本想法应该能给你正确的方向。谢谢你的建议,沃伦:)