私はインテントを通じてアクティビティにオブジェクトを渡そうとしていますが、デバッグしているときに、私はアクティビティのメソッドonCreate()
にはまったく参加していないようです。アクティビティが開始されたにもかかわらず、レイアウトとすべてがあり、onCreate()
メソッド内のブレークポイントには決して到達しないため、デバッグする機会はありません。これはどのように可能です、私はここで何を理解していませんか?活動はOnChildClickイベントで開始された:)android onCreate(saved Bundle savedInstanceState)
listView.setOnChildClickListener(new ExpandableListView.OnChildClickListener() {
@Override
public boolean onChildClick(ExpandableListView parent, View v, int groupPosition, int childPosition, long id) {
String selection = itemsArray[groupPosition][childPosition];
Class calc = null;
switch (selection) {
case "Calc1":
calc = Calc1.class;
break;
case "Calc2":
calc = Calc2.class;
break;
}
Intent intent = new Intent(Main.this, calc);
intent.putExtra("controller", getController());
startActivity(intent);
return false;
}
});
、私が通過しようとしているオブジェクトは(getController()
メソッドによって返された)コントローラヘルプ
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.calc1);
controller = (Controller) getIntent().getSerializableExtra("controller");
setController(controller);
editA = (EditText) findViewById(R.id.editA);
editB = (EditText) findViewById(R.id.editB);
}
これは私が設定onCreate()
、ありますブレークポイントはsetContentView()
で、私が言ったように、明らかに私は決してそこに着くことはできません...私はここで何かを逃しているように感じる。
Btw。私はアンドロイドの新しいです;)
読んでいただきありがとうございます!
コールバックメソッド内にログまたはトーストを追加して、到達したかどうかを確認します。 –
はマニフェストで宣言されたアクティビティですか?あなたは代わりにコントローラ=(コントローラ)にデバッガを入れてみましたか? –
(setContentView(R.layout.calc1);が呼び出された場合にのみ可能です)アクティビティが開かれるので、ある時点で到達する必要がありますが、なぜデバッグできないのか分かりません。はい、すべてが目録にあります。 'setController(controller);の後にToastを追加しましたが、表示されません。また、私はデバッガをメソッドの他の場所に置いてみました。それは決してうまくいかない。 – mcCat