2015-10-20 105 views
0

所以我在我的应用程序中有一些复选框,我想将数组字符串更改为一组null和1,具体取决于是否选中该框。目前,我有这样的代码:复选框,崩溃的应用程序不知道为什么

public void SendSearch(View view) { 
    String [] searchArray = new String[18]; 
    if (checkBoxCocktail.isChecked()){ 
     searchArray[8]="1"; 
    } 
} 

但是当我调用该方法的应用程序重新启动。我敢肯定,我上面的代码是正确的,我想我的问题可能与早期的这种方法,检查,并取消选中的复选框骗点击的ImageView的时候:

public void CheckCocktail(View view) { 
    checkBoxCocktail =(CheckBox) findViewById(R.id.checkBoxCocktail); 
    if (checkBoxCocktail.isChecked()) { 
     checkBoxCocktail.setChecked(false); 
    } else { 
     checkBoxCocktail.setChecked(true); 
    } 
} 

我只是不能工作了,为什么它不工作时,单击应用程序刚刚重新启动时的按钮时没有logcat错误。无论选中该复选框还是不管应用程序崩溃如何。

+0

请在问题中发布您的日志。 – sonic

回答

2
  1. 确保searchArray包含在索引中的字符串值8
  2. 确保findViewById(R.id.checkBoxCoctail)返回一个复选框对象,而不是一个空值。
  3. 如果上述建议不能解决您的问题,请发布更多的代码。
+0

我认为问题是我在我的第二个方法中声明了我的复选框,并且这使得无法对null值调用.isChecked。谢谢你的帮助。 – James