簡體   English   中英

從另一個活動調用另一個活動的方法

[英]Calling method of one another activity from another activity

這是代碼片段,

class1.java

public class1 extends ListActivity {


   public class1(){}

   public testMethod()
   {
         Toast.makeText(getApplicationContext(),"Inside Method",Toast.LENGTH_SHORT).show();
   }

}

class2.java

public class2 extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

          class1 c = new class1();
          c.testMethod();

    }

}

我想從class2調用“ testMethod”,當前出現以下錯誤,

08-04 22:59:27.428: ERROR/AndroidRuntime(1224): FATAL EXCEPTION: main
08-04 22:59:27.428: ERROR/AndroidRuntime(1224): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.assistant/com.assistant.AssistantActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.assistant/com.assistant.addNew}: java.lang.NullPointerException

謝謝。

我有兩個標簽

Tab1擴展了Activity(class2.java)=>包含在DB中添加條目的表單

Tab2擴展了ListActivity(class1.java)=>包含已添加條目的列表

每當通過Tab1添加任何條目時,我都想刷新Tab2,並且我在class2.java中添加了方法,以使用更新的DB條目填充列表。

現在,我想在添加條目后從class1.java調用該方法。

考慮使該方法成為靜態方法。 盡管我不確定是否可以實例化一個Activity,但您還記得將它們都添加到Android清單中嗎?

也許getApplicationContext()返回null

testMethod需要一個返回類型(例如void):

public void testMethod(){
   //your code
}

得到了解決方案,在第二個選項卡的“ onResume()”中編寫了代碼,因此無需調用方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM