我正在尝试为自定义图库中的多个图像设置一个数量。我有两个按钮,我可以选择要选择的图像数量。现在我有两个按钮标签为4和5.一旦我点击说按钮4,整数值4被发送到另一个活动。
接收活动的问题1 即使我只点击了一个按钮,我也会得到整数值4和5。
问题2 MAX_IMAGE_SELECTION_LENGTH始终返回null。此变量必须具有值4或5.它在其他方法中用于设置要选择的图像数量。
用于发送整数值的intent。类:CountChooser.java
View.OnClickListener c4ClickListner = new View.OnClickListener(){
@Override
public void onClick(View v) {
Intent i = new Intent().putExtra("count4", 4);
CustomGalleryActivity customGalleryActivity = new CustomGalleryActivity();
customGalleryActivity.setIntent(i);
Intent intent = new Intent(getApplicationContext(), MainActivity.class);
startActivity(intent);
}
};
View.OnClickListener c5ClickListner = new View.OnClickListener(){
@Override
public void onClick(View v) {
Intent i = new Intent().putExtra("count5", 5);
CustomGalleryActivity customGalleryActivity = new CustomGalleryActivity();
customGalleryActivity.setIntent(i);
Intent intent = new Intent(getApplicationContext(), MainActivity.class);
startActivity(intent);
}
};
接收活动类:CustomGalleryActivity.java
int MAX_IMAGE_SELECTION_LENGTH;
Intent intent = getIntent();
int count_4 = intent.getIntExtra("count4", 0);
int count_5 = intent.getIntExtra("count5", 0);
if(intent.hasExtra("count4")){
MAX_IMAGE_SELECTION_LENGTH = count_4;
}else if(intent.hasExtra("count5")) {
MAX_IMAGE_SELECTION_LENGTH = count_5;
}
我该如何解决这个问题?我也尝试过stackoverflow上可用的不同解决方案,但无法完成。
答案 0 :(得分:0)
View.OnClickListener c4ClickListner = new View.OnClickListener(){
@Override
public void onClick(View v) {
finish();
}
};
覆盖finish方法并将其放入:
Intent i = new Intent(CountChooser.this,CustomGalleryActivity.class);
i.putExtra("count4", 4);
startActivity(intent);
答案 1 :(得分:0)
问题1: 您在全局视图上设置OnClickListener?这是什么观点? 使用?:
Button button1 = (Button) findviewbyId(R.id......)
button1.OnClickListener
答案 2 :(得分:0)
为count和chekh创建一个关键字,无论是4还是5 现在创建一个检查计数是否有5或4的条件 如果(计数== 4){
}否则{
}
答案 3 :(得分:0)
使用下面相应活动中给出的代码替换您的代码。
CountChooser.java
View.OnClickListener c4ClickListner = new View.OnClickListener(){
@Override
public void onClick(View v) {
Intent intent = new Intent(getApplicationContext(), CustomGalleryActivity.class);
intent.putExtra("count", 4);
startActivity(intent);
}
};
View.OnClickListener c5ClickListner = new View.OnClickListener(){
@Override
public void onClick(View v) {
Intent intent = new Intent(getApplicationContext(), CustomGalleryActivity.class);
intent.putExtra("count", 5);
startActivity(intent);
}
};
<强> CustomGalleryActivity.java 强>
int MAX_IMAGE_SELECTION_LENGTH;
Intent intent = getIntent();
int count = intent.getIntExtra("count", 0);
if(count != 0){
if(count == 4){
MAX_IMAGE_SELECTION_LENGTH = 4;
}else if(count == 5) {
MAX_IMAGE_SELECTION_LENGTH = 5;
}
}
如果这对您有帮助,请告诉我。