它表示预期表达,但没有关于缺少什么符号的建议。我正在使用android studio。我想这只是一个简单的解决方法,我只是不确定是什么符号。
继承我的代码:
public class CloudActivity extends ActionBarActivity implements View.OnClickListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_cloud);
Button genderButton = (Button) findViewById(R.id.genderButton);
Button button3 = (Button) findViewById(R.id.button3);
genderButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(CloudActivity.this, LoginActivity.class);
startActivityForResult(intent, 0);
}
},
button3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent tnt = new Intent(CloudActivity.this, LogActivity.class);
startActivityForResult(tnt, 0);
}
}, // Where the problem is
));
}
@Override
public void onClick(View v) {
}
}
答案 0 :(得分:1)
您关闭了匿名内部类(new View.OnClickListener() {
)错误。你不应该用逗号分隔它们,而是用);
关闭它们。
例如,
genderButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(CloudActivity.this, LoginActivity.class);
startActivityForResult(intent, 0);
}
});
将{}
和()
与所有人匹配。因此,您需要为button3.setOnClickListener(new View.OnClickListener() {
以及您可能拥有的任何其他内容执行相同的操作。
您可以在Java Docs
中详细了解它们答案 1 :(得分:0)
试试这个。你没有正确地关闭你的内部课程。我想你不小心用逗号代替半冒号?
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_cloud);
Button genderButton = (Button) findViewById(R.id.genderButton);
Button button3 = (Button) findViewById(R.id.button3);
genderButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(CloudActivity.this, LoginActivity.class);
startActivityForResult(intent, 0);
}
});
button3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent tnt = new Intent(CloudActivity.this, LogActivity.class);
startActivityForResult(tnt, 0);
}
});
}