在常规的Android项目中,资源R类中的常量声明如下:
public static final int main=0x7f030004;
但是,从ADT 14开始,在库项目中,它们将被声明为:
public static int main=0x7f030004;
换句话说,常量在库项目中不是最终的。
因此,您的代码将不再编译。
解决方案很简单:将switch语句转换为if-else语句。
public void onClick(View src)
{
int id = src.getId();
if (id == R.id.playbtn){
checkwificonnection();
} else if (id == R.id.stopbtn){
Log.d(TAG, "onClick: stopping srvice");
Playbutton.setImageResource(R.drawable.playbtn1);
Playbutton.setVisibility(0); //visible
Stopbutton.setVisibility(4); //invisible
stopService(new Intent(RakistaRadio.this,myservice.class));
clearstatusbar();
timer.cancel();
Title.setText(" ");
Artist.setText(" ");
} else if (id == R.id.btnmenu){
openOptionsMenu();
}
}
您可以使用以下命令将switch语句快速转换为if-else语句:
在Eclipse中
将光标移动到switch关键字,然后按Ctrl 1,然后选择
Convert ‘switch’ to ‘if-else’.
在Android Studio中
将光标移动到switch关键字,然后按Alt Enter,然后选择
Replace ‘switch’ with ‘if’.