我有两个活动拨号盘和电话。在拨号盘活动中有一个编辑框和按钮来拨打号码,在电话活动中有5条线路要打电话。当你选择线路1时,拨号活动打开等等。我面临的问题是第一次我从电话活动中选择任何线路,拨号活动的onCreate功能为cal,当我返回到电话活动并选择其他线路时,不会调用拨号活动的onCreate()功能。拨号活动的onStart()函数是cal,我想调用onCreate()函数.plz帮助我解决这个问题。当我返回第一个活动时,第二个活动的onCreate()函数不会在第二次调用
public class DialPad extends Activity
{
private TextView m_objStatus;
private Button m_objBtnDial;
int m_nLineNo = -1;
boolean m_objContactFlag;
public static Phone m_objPhone;
private static String[] m_objPhoneNum = new String[VaxSIPUserAgent.TOTAL_LINE_COUNT];
public void onCreate(Bundle savedInstanceState)
{
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
Phone.m_objDialPad = this;
Intent intent = getIntent();
int nIntentExtraLineNo = intent.getIntExtra("LineNo", 1);
m_nLineNo = nIntentExtraLineNo;
final int [] aLineArray = new int[VaxSIPUserAgent.TOTAL_LINE_COUNT - 1];
int nIndex = 0;
for (int nLineNo = 0; nLineNo < VaxSIPUserAgent.TOTAL_LINE_COUNT; nLineNo++)
{
if(m_nLineNo == nLineNo)
continue;
aLineArray[nIndex] = nLineNo + 1;
nIndex++;
}
String sLineStatus = VaxStatus.m_objVaxStatus.GetLineStatus(m_nLineNo);
OnStatusPhone(sLineStatus);
String sPhoneNo = intent.getStringExtra("PhoneNo");
if(sPhoneNo != null)
{
m_objPhoneNum[nIntentExtraLineNo] = sPhoneNo;
}
m_objEditDialscreen.setText(m_objPhoneNum[nIntentExtraLineNo]);
}
@Override
protected void onStart()
{
UpdateDialBtn();
if(m_objContactFlag == false)
m_objEditDialscreen.setText(m_objPhoneNum[m_nLineNo]);
IncommingCallSlider.m_objCallSlider.SetActiveActivity(this, R.id.dialpad);
IncommingCallRing.m_objIncommingCallRing.SetActiveActivity(this);
DialCallTone.m_objDialCallTone.SetActiveActivity(this);
super.onStart();
}
@Override
protected void onStop()
{
m_objPhoneNum[m_nLineNo] = m_objEditDialscreen.getText().toString();
super.onStop();
}
}
我想CAL在第2条第二时间,但在onStart()函数被调用的getIntent()函数。 – user3136235
oncreate()只会被调用一次...您可以在每次返回电话活动时完成拨号活动。 – Vikram