Android 从项目开始 activity
Android start activity by Item
我有一个显示在 AlertDialog 中的数组,我想在单击该行时启动一个 activity 并传递一些数据。
我创建了这段代码,但如果是数组,有三个元素,则打开三个活动。我哪里错了?谢谢
final String[] choiceList = nome_op;
final String[] idOperatoriList = id_nome_op;
builder2.setItems(choiceList, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int item) {
for (int i = 0; i < choiceList.length; i++) {
Intent singole_usc = new Intent(getActivity(), Inserisci_m.class);
Bundle extras = new Bundle();
extras.putString("id", idOperatoriList[item]);
extras.putLong("data", calendarioFooter.getTimeInMillis());
singole_usc.putExtras(extras);
startActivity(singole_usc);
}
}
})
...
看来您只需要将代码从 for 循环中取出即可。像这样,
final String[] choiceList = nome_op;
final String[] idOperatoriList = id_nome_op;
builder2.setItems(choiceList, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int item) {
Intent singole_usc = new Intent(getActivity(), Inserisci_m.class);
Bundle extras = new Bundle();
extras.putString("id", idOperatoriList[item]);
extras.putLong("data", calendarioFooter.getTimeInMillis());
singole_usc.putExtras(extras);
startActivity(singole_usc);
}
})
索引变量 i 无论如何都不会在块中使用。
将 startActivity() 置于 for 循环之外
Intent singole_usc = new Intent(getActivity(),
for (int i = 0;
i < choiceList.length; i++) {
Inserisci_m.class);
Bundle extras = new Bundle();
extras.putString("id", idOperatoriList[item]);
extras.putLong("data", calendarioFooter.getTimeInMillis());
singole_usc.putExtras(extras);
}
startActivity(singole_usc);
我有一个显示在 AlertDialog 中的数组,我想在单击该行时启动一个 activity 并传递一些数据。 我创建了这段代码,但如果是数组,有三个元素,则打开三个活动。我哪里错了?谢谢
final String[] choiceList = nome_op;
final String[] idOperatoriList = id_nome_op;
builder2.setItems(choiceList, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int item) {
for (int i = 0; i < choiceList.length; i++) {
Intent singole_usc = new Intent(getActivity(), Inserisci_m.class);
Bundle extras = new Bundle();
extras.putString("id", idOperatoriList[item]);
extras.putLong("data", calendarioFooter.getTimeInMillis());
singole_usc.putExtras(extras);
startActivity(singole_usc);
}
}
})
...
看来您只需要将代码从 for 循环中取出即可。像这样,
final String[] choiceList = nome_op;
final String[] idOperatoriList = id_nome_op;
builder2.setItems(choiceList, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int item) {
Intent singole_usc = new Intent(getActivity(), Inserisci_m.class);
Bundle extras = new Bundle();
extras.putString("id", idOperatoriList[item]);
extras.putLong("data", calendarioFooter.getTimeInMillis());
singole_usc.putExtras(extras);
startActivity(singole_usc);
}
})
索引变量 i 无论如何都不会在块中使用。
将 startActivity() 置于 for 循环之外
Intent singole_usc = new Intent(getActivity(),
for (int i = 0;
i < choiceList.length; i++) {
Inserisci_m.class);
Bundle extras = new Bundle();
extras.putString("id", idOperatoriList[item]);
extras.putLong("data", calendarioFooter.getTimeInMillis());
singole_usc.putExtras(extras);
}
startActivity(singole_usc);