在android中,如何为同时也是constructor
的class
创建Activity
?
我的问题是,我想有两个活动类(estimateFare和Mapping),它们都将数据发送到活动类(CalculateFare
)。映射从实时网络信息中获取数据,而estimateFare从用户输入中获取数据。我希望CalculateFare
能够使用任何一个类中的数据来执行计算,尽管我在onCreate
方法和CalculateFare
的构造函数方面遇到了麻烦。当在应用程序运行时调用该类时,我在LogCat
中收到以下消息;
Unable to instantiate activity ComponentInfo.
CalculateFare的片段如下:
public class CalculateFare extends Activity {
TextView t;
static long length;
static int dist;
static int mMonth;
static int mDay;
public static double fare;
double rate1 = 0, rate2a, rate2b, rate3, rate4a, rate4b;
int remDist = 0;
double remLength;
private static int TTS_DATA_CHECK = 1;
private TextToSpeech tts = null;
private boolean ttsIsInit = false;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.fare);
}
public CalculateFare(long length, int dist, int mMonth, int mDay)
{
}
public static void setLength(long l)
{
length = l;
}
public static void setDist(int d)
{
dist = d;
}
public static void setDate(int m, int d)
{
mMonth = m;
mDay = d;
}
public void calc()
{
任何建议非常感谢
最佳答案
将数据移到一个单独的类中,该类根本不是活动,而是在活动之间共享的。数据可以构造为来自用户的数据和来自网络的数据。有关活动之间共享数据的方法,请参见例如this thread。
当框架需要活动时创建另一个实例时,实例化恰好是活动的CalculateFare对象将无济于事。