我尝试从onTouch块启动一个新活动,但应用程序突然终止。我的代码是:
public boolean onTouch(View view, MotionEvent motionEvent) {
....
Intent myIntent = new Intent(context,SecondOne.class);
myIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(myIntent);
break;
.....
return true;
}
答案 0 :(得分:0)
我没有看到日志的初步猜测是某些东西是空的,或者第二个活动没有在你的清单中声明。
我也会说:
Intent myIntent = new Intent(FirstOne.this,SecondOne.class);
myIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(myIntent);
break;
答案 1 :(得分:0)
您需要将实际上下文放在意图中。
Intent myIntent = new Intent(ThisClass.this, SecondOne.class);
thisClass
是您编写此代码的任何类。
答案 2 :(得分:0)
您的代码似乎遇到了问题。
break;
。首先,请确保从onTouch()
函数中删除它。
<activity android:name=".SecondOne" >
</activity>
context
变量有效。即如果您的第一个活动名称为First
,则其有效context
应等于First.this
我假设OnTouchListener的实现没问题。
您的OnTouchListener
实施
private final class OT implements OnTouchListener{
@Override
public boolean onTouch(View v, MotionEvent event) {
context = First.this;
Intent intent = new Intent(context, SecondOne.class);
context.startActivity(intent);
return true;
}
}
绑定到您的按钮以开始其他活动。
yourButton.setOnTouchListener(new OT());
在AndroidManifest.xml中
<activity android:name=".SecondOne" >
</activity>