Android调用函数来自另一个没有静态的类

时间:2014-05-25 23:58:22

标签: android function class

好的,我现在已经搜索了几天,而且我似乎找不到从另一个类调用一个函数的简单方法。我有Active.java和Finished.Java。我想要做的是来自Finished.java调用run_now();来自Active.java。最终我将从php / mysql服务器调用信息,所以我不能将这些函数中的任何一个静态化。任何帮助都很棒..谢谢

public class Finished extends Activity
{   
public void onCreate(Bundle savedInstanceState) 
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.finished_page);

    Log.i("Info:", "Finished");
            run_now();
}
}

public class Active extends Activity
{
    public void onCreate(Bundle savedInstanceState) 
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.finished_page);

    Log.i("Info:", "Active");
}

    public class run_now extends AsyncTask<String, Void, String> 
    {
           @Override
       protected void onPreExecute() 
       {
           super.onPreExecute();   
       }

           protected void onPostExecute(String result)
       {

           }

           @Override
       protected String doInBackground(String... params) 
       {
                 // DO SOMETHING HERE
           }
}
}

2 个答案:

答案 0 :(得分:1)

由于你没有任何静态函数,你可以将这段代码包装在Active.java中的简单公共函数中,例如运行

    public void run()
    {
       new run_now().execute();
    }

然后你可以在Finished.java OnCreate()中创建一个Active.java类的对象并调用run。

    Active active=new Active();
    active.run();

答案 1 :(得分:0)

我认为你可以将方法设为静态,只要你传递当前的Context。