这是Android开发的新功能,我需要区分意图针对同一活动的两种不同意图,让我清楚地解释一下,当用户按下该按钮时,它会触发其他活动,在该活动中它将携带一些意图值,基于该行为的用户将输入一个值基于此,我将从那里从意图中触发意图的地方填充listview,如果用户从那里按listview的方式,如何将意图与一些其他intent值一起传递,以及如何区分接收活动中的两个intent,这是wh
at i have tried so far:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// handle item selection
switch (item.getItemId()) {
case R.id.add:
int id=timertrackerdao.getNotesCount();
if(id>0){
Toast.makeText(getContext().getApplicationContext()," Please Finish The Pending Visit",Toast.LENGTH_SHORT).show();
}
else {
Intent intent = new Intent(getActivity().getApplicationContext(), AddNotes.class);
intent.putExtra("taskid",taskid);
intent.addFlags(0);
startActivityForResult(intent, 1);
}}
return super.onOptionsItemSelected(item);
}
这是我将从菜单栏触发意图的地方
Intent intent = new Intent(getActivity().getApplicationContext(), AddNotes.class);
Bundle bundle=new Bundle();
bundle.putInt("addnoteid",id);
bundle.putInt("taskid",taskid);
bundle.putString("checkin",checkin);
intent.addFlags(1);
startActivityForResult(intent, 1);
这是我将从列表视图中选择值的位置,这是另一组值。在接收活动中,这里是如何试图区分意图的:
Intent intent=getIntent();
if(intent.getFlags()==0) {
if (intent != null) {
taskid = intent.getIntExtra("taskid", 0);
}
}
else {
Bundle extras = getIntent().getExtras();
if (extras != null) {
check.setEnabled(false);
// TaskID=extrass.getInt("noteid");
id = extras.getInt("addnoteid");
date = extras.getString("checkin");
TaskID = extras.getInt("taskid");
createNotification(date);
AddNote(id);
}
}
现在我的问题是如何通过单击列表视图来区分两种意图,一种是通过按钮单击,另一种是通过单击列表视图,以及如何在接收活动中进行区分?
像这样同时输入两个字符串
intent.putExtra("from","button");
和
intent.putExtra("from","listview");
现在正在进行另一项活动
if(getIntent().getStringExtra("from").equals("button"))
{ //do here
}else if(getIntent().getStringExtra("from").equals("listview"))
{ // do here
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句