当前位置: 代码迷 >> Android >> 求解关于开启另一个activity的有关问题
  详细解决方案

求解关于开启另一个activity的有关问题

热度:89   发布时间:2016-04-28 02:41:12.0
求解关于开启另一个activity的问题
我有一个MainActivity和一个SecondActivity,在MA中有两种情况能开启SA。
一、通过点击一个listview里的item,并把item的值传给SA。
二、通过手势向右滑动开启SA,不传任何值。
在SA里如何写判断呢?
这是情况一:

lv_timelist.setOnItemClickListener(new OnItemClickListener() {

@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
tls = timelist.get(position);
Integer hourMain = tls.getHour();
Integer minMain = tls.getMinute();

Intent data = new Intent(MainActivity.this,SettingActivity.class);
data.putExtra("hourMain", hourMain);
data.putExtra("minMain", minMain);
setResult(0, data);

startActivityForResult(data, requestCode);
}

});

这是情况二:

public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
float velocityY) {
if (e1.getX() - e2.getX() > 100) {
System.out.println("向左");
Intent settingIntent = new Intent(MainActivity.this,
SettingActivity.class);
startActivity(settingIntent);
return true;
}
return false;
}


这是SA的ONCREATE方法:

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_setting);
timePic = (TimePicker) findViewById(R.id.timePic);
//这是timepIcker组件,情况一传进来的值直接设置进tp,情况二为获取系统时间设置进tp
timePic.setIs24HourView(true);

//Something Wrong!!!!!!!!!!!
               //两种情况传进来的intent都不为空,所以我不知道该用什么方法去判断了
Intent intent = getIntent();
if(intent!=null){
Bundle bundle=intent.getExtras(); 
hourSet = bundle.getInt("hourMain");
minSet = bundle.getInt("minMain");

timePic.setCurrentHour(hourSet);
timePic.setCurrentMinute(minSet);
}

}

------解决思路----------------------
两这个都多传一个参数,如:第一种传type=1,第二种传type=2,SA判断type的值即可。
  相关解决方案