在我的Android应用程序,也有绘制文件夹中的图像数量。在我的布局有两个按钮:后退和前进按钮。单击[下一步和后退按钮2个不同的图像得到的相同的布局(适用于所有图像)加载。
问题:我能上下一首/后退按钮的点击,但在到达最后一个图像后,加载图像,我想让我的下一个按钮禁用和同为回button.As用户第一幅图像上的后退按钮应被禁用。 code是因为:
公共类SequencerActivity扩展活动实现OnClickListener
{
私人诠释imageCounter = 0;
私人ImageView的ImageLoader的;
私人INT []图像列表= {R.drawable.image_wo_lbl_0,R.drawable.image_wo_lbl_1,R.drawable.image_wo_lbl_2,R.drawable.image_wo_lbl_3,R.drawable.image_wo_lbl_4,R.drawable.image_wo_lbl_5,
R.drawable.image_wo_lbl_6,R.drawable.image_wo_lbl_8,R.drawable.image_wo_lbl_9,R.drawable.image_wo_lbl_10,R.drawable.image_wo_lbl_11};
@覆盖
公共无效的onCreate(包savedInstanceState)
{
的setContentView(R.layout.parent_frame); //这个是所有图像视图的公用父布局
super.onCreate(savedInstanceState);
/*requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow()。setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN); * /
// INT此搜索= R.drawable.image_w_lbl_0;
ImageLoader的=(ImageView的)findViewById(R.id.imageLoader);
//imageLoader.setImageResource(image1);
接下来的ImageButton =(的ImageButton)findViewById(R.id.next);
的ImageButton回=(的ImageButton)findViewById(R.id.back);
next.setOnClickListener(本);
back.setOnClickListener(本);
//显示默认的图像
this.loadImage(图像列表[imageCounter]);
}
@覆盖
公共无效的onClick(视图v)
{
INT的ImagePath = 0;
// TODO自动生成方法存根
开关(v.getId())
{
案例R.id.next:
Log.i(标记,标记);
如果(imageCounter< imageList.length)
{
imageCounter ++;
的ImagePath =图像列表[imageCounter]
如果(imageCounter ==(imageList.length)-1)
{
//如何使我的下一个按钮关闭
}
}
打破;
案例R.id.back:
如果(imageCounter大于0)
{
imageCounter--;
的ImagePath =图像列表[imageCounter]
如果(imageCounter == 0)
{
//如何让我的背部按钮关闭
}
}
打破;
}
this.loadImage(的ImagePath);
}
私人无效的LoadImage(INT的ImagePath)
{
imageLoader.setImageResource(的ImagePath);
}
}
解决方案
案例R.id.next:
Log.i(标记,标记);
如果(imageCounter< imageList.length)
{
imageCounter ++;
的ImagePath =图像列表[imageCounter]
如果(imageCounter ==(imageList.length)-1)
{
接下来的ImageButton =(的ImageButton)findViewBYId(R.id.next);
next.setEnabled(假);
}
}
打破;
案例R.id.back:
如果(imageCounter大于0)
{
imageCounter--;
的ImagePath =图像列表[imageCounter]
如果(imageCounter == 0)
{
的ImageButton回=(的ImageButton)findViewBYId(r.id.back);
back.setEnabled(假);
}
}
打破;
In my android application, there are number of images in drawable folder. In my layout there are two buttons: Back and Next buttons. On clicking next and back buttons 2 different images get loaded on the same layout(common for all images).
Problem:I am able to load images on Next/Back button's click but after reaching the last image, I want to make my Next button disable and same for the back button.As the user is on the first image the back button should be disabled. Code is as:
public class SequencerActivity extends Activity implements OnClickListener
{
private int imageCounter = 0;
private ImageView imageLoader;
private int[] imageList = {R.drawable.image_wo_lbl_0, R.drawable.image_wo_lbl_1, R.drawable.image_wo_lbl_2, R.drawable.image_wo_lbl_3, R.drawable.image_wo_lbl_4, R.drawable.image_wo_lbl_5,
R.drawable.image_wo_lbl_6, R.drawable.image_wo_lbl_8, R.drawable.image_wo_lbl_9,R.drawable.image_wo_lbl_10, R.drawable.image_wo_lbl_11};
@Override
public void onCreate(Bundle savedInstanceState)
{
setContentView(R.layout.parent_frame);//this one is the common parent layout for all image views
super.onCreate(savedInstanceState);
/*requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);*/
//int image1 = R.drawable.image_w_lbl_0;
imageLoader = (ImageView) findViewById(R.id.imageLoader);
//imageLoader.setImageResource(image1);
ImageButton next = (ImageButton) findViewById(R.id.next);
ImageButton back = (ImageButton) findViewById(R.id.back);
next.setOnClickListener(this);
back.setOnClickListener(this);
//show the default image
this.loadImage(imageList[imageCounter]);
}
@Override
public void onClick(View v)
{
int imagePath = 0;
// TODO Auto-generated method stub
switch (v.getId())
{
case R.id.next:
Log.i("Tag","tag");
if(imageCounter < imageList.length)
{
imageCounter++;
imagePath = imageList[imageCounter];
if (imageCounter==(imageList.length)-1)
{
//how to make my next button disable
}
}
break;
case R.id.back:
if(imageCounter > 0)
{
imageCounter--;
imagePath = imageList[imageCounter];
if (imageCounter==0)
{
//how to make my back button disable
}
}
break;
}
this.loadImage(imagePath);
}
private void loadImage(int imagePath)
{
imageLoader.setImageResource(imagePath);
}
}
解决方案
case R.id.next:
Log.i("Tag","tag");
if(imageCounter < imageList.length)
{
imageCounter++;
imagePath = imageList[imageCounter];
if (imageCounter==(imageList.length)-1)
{
ImageButton next=(ImageButton)findViewBYId(R.id.next);
next.setEnabled(false);
}
}
break;
case R.id.back:
if(imageCounter > 0)
{
imageCounter--;
imagePath = imageList[imageCounter];
if (imageCounter==0)
{
ImageButton back=(ImageButton)findViewBYId(r.id.back);
back.setEnabled(false);
}
}
break;