2012-12-10 49 views
0

我有一個問題,當我試圖從另一個類,而不是一個新的複選框,相同的獲取NullPointer異常。getcheckbox從另一個類android

這就是我想做的事:

/*My First class*/ 
     class Object1 { 
      private Checkbox checkbox; 
      private String texto=""; 

      public Object1(Context context, Texto texto){ 
      this.texto=texto; 
      checkbox=new checkbox(context); 
      } 

    //Here is How I'm returning the checkbox 
     public CheckBox getCheckBox(){ 
      return checkbox; 
     } 
     } 


/*My Second class where I'm trying to set a listener to the checkbox*/ 
     Class Object2{ 
     public Object2(){ 
      --->> new Object1.getCheckBox().setOnCheckedChangeListener(listener); 
     } 
     } 

我怎樣才能得到它?

+1

請正確格式化您的代碼。你看起來像僞代碼('新的Object1.'甚至沒有正確實例化,沒有'公共'關鍵字等),你甚至沒有發佈完整的堆棧跟蹤。但是,如果我是你,我會安裝Object1 **,然後**訪問'getCheckBox()'。 –

回答

0

我相信你沒有使用你的構造函數。

不應:

new Object1.getCheckBox().setOnCheckedChangeListener(listener); 

要:

new Object1(context, texto).getCheckBox().setOnCheckedChangeListener(listener); 

在第一個例子中,我很確定你沒有正確地實例化它,因爲它至少必須是新的Object1(),但是你會得到編譯器錯誤,抱怨你沒有使用正確的構造函數...所以你必須無意中創建對類本身的引用。

+0

謝謝,是啊!而已! – user1893074