【发布时间】:2011-06-14 13:15:26
【问题描述】:
虽然关于这个话题有几个问题,但我找不到正确的答案。
我有一个主要活动(这是选项卡视图中的一个活动),我从中调用登录活动。
Button chdbtn=(Button)findViewById(R.id.Add);
chdbtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent myIntent = new Intent(main.this, Login.class);
startActivityForResult(myIntent, 1001);
}
});
protected void onActivityResult(int requestCode, int resultCode, Intent data){
if(requestCode == 1001)
{
if(resultCode == RESULT_OK)
{
Log.i("Info","Inside");
}
}
}
在我的登录类中,当我点击一个按钮时,我正在这样做
Button chdbtn=(Button)findViewById(R.id.Addchild);
chdbtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent Ireturn = new Intent();
setResult(RESULT_OK,Ireturn);
finish();
}
});
但是当我点击登录活动中的按钮时,控件并没有进入主要活动的 onActivityResult 方法。谁能指导我这是什么问题。
VIJAYapp.sample.ChildEntry1$1/onClick:23
INFO/ActivityManager(59):开始活动:Intent { cmp=app.sample/.ChildLogin }
WARN/ActivityManager(59): startActivity 从非 Activity 上下文中调用;强制 Intent.FLAG_ACTIVITY_NEW_TASK 用于:Intent { cmp=app.sample/.ChildLogin }
DEBUG/PhoneWindow(999):无法保存哪个视图具有焦点,因为焦点视图 com.android.internal.policy.impl.PhoneWindow$DecorView@43e4b620 没有 id。
INFO/ActivityManager(59):显示的活动 app.sample/.ChildLogin:460 毫秒(总共 460 毫秒)
INFO/VIJAY(999):VIJAYapp.sample.ChildLogin$1/onClick:24
上面是我点击按钮时得到的日志。我可以看到 Activity 存在一些问题..有答案吗?
【问题讨论】:
-
如果您调试并在“if(requestCode == 1001)”行设置断点,是否会受到影响?我怀疑你的 onActivityResult 被调用了,它只是没有收到你的日志消息。
-
检查RESULT_OK的值在两个类中是否相同
-
我已经尝试在 onActivityResult 函数的开头放置一个断点,但它从未被命中。我已将日志语句放在所有函数的开头以打印文件、函数和行号,这就是我得到的
-
06-14 20:24:33.689: 错误/VIJAY(586): VIJAYapp.sample.ChildEntry1$1/onClick:46 06-14 20:24:50.370: 错误/VIJAY(586): VIJAYapp.sample.ChildLogin$2/onClick:49
标签: android android-activity activity-finish