两个可以说是一样的,但为什么第二个会报错
private OnClickListener listener2=new OnClickListener()
{
public void onClick(View v)
{
Intent intent=new Intent(MainActivity.this, ExampleService.class);//这样就对了
switch (v.getId())
{
case R.id.btnStartService:
startService(intent);
break;
case R.id.btnEndService:
stopService(intent);
break;
}
}
};
private OnClickListener listener = new OnClickListener() {
Intent intent = new Intent(MainActivity.this, ExampleService.class);//这样就错了
public void onClick(View v) {
switch(v.getId()) {
case R.id.btnStartService :
startService(intent);
break;
case R.id.btnEndService :
stopService(intent);
break;
}
}
};
private OnClickListener listener2=new OnClickListener()
{
public void onClick(View v)
{
Intent intent=new Intent(MainActivity.this, ExampleService.class);//这样就对了
switch (v.getId())
{
case R.id.btnStartService:
startService(intent);
break;
case R.id.btnEndService:
stopService(intent);
break;
}
}
};
private OnClickListener listener = new OnClickListener() {
Intent intent = new Intent(MainActivity.this, ExampleService.class);//这样就错了
public void onClick(View v) {
switch(v.getId()) {
case R.id.btnStartService :
startService(intent);
break;
case R.id.btnEndService :
stopService(intent);
break;
}
}
};
解决方案 »
- EditText如何获取焦点?
- android视频语音聊天有什么思路啊?
- listview 记录,查看更多的问题,在线等
- [Android讨论] 如何在两个应用之间共用一个接口?请教一个自定义ClassLoader
- cannot create /sdcard/boot.img: permission denied怎么解决
- strings.xml报空指针异常
- 关于Android SurfaceView一个小问题 大家来帮小菜一下
- adb push 的问题
- android 怎么发展
- 为什么我的library中很多版本都很低
- java访问ejabber失败,求解
- android的listview在adapter,notifyDataSetChanged之后怎样才能不回到最上面?
Intent intent = new Intent(MainActivity.this, ExampleService.class);是创建一个实例,
第一个是按钮按了以后再实例化intent,第二个是先实例化intent,
我想实例化对先按后按不影响吧,我现在认为 onClick开始执行才是跳转的开始,
会不会是intent实例化里面有什么不知道的东西有影响。
private OnClickListener listener = new OnClickListener()
{
// 添加个LogCat试试,如下:
// 当你点击按钮的时候,如果在LogCat打出enter,证明可以在Intent放置在这,
// 否则,就会报Unable to instantiate activity ComponentInfo错误
Log.i(TAG, "enter");
Intent intent = new Intent(MainActivity.this, ExampleService.class);// 这样就错了 public void onClick(View v)
{
switch (v.getId())
{
case R.id.btnStartService:
startService(intent);
break;
case R.id.btnEndService:
stopService(intent);
break;
}
}
};
public class test extends Activity {
private Intent it = new Intent(test.this,coverTest.class);
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
......
}}
首先感谢大家这么热心,这几天加班狠猛,学习Android的事得缓缓。
其次我看了所有回复后,感觉这个好同志和wlianghe00似乎说到点上了,由于使用了内部类了吧,回去我试试把实例化放在全局来看看,如果此观点正确那全局也会报错的。似乎可以结帖勒