Java Android Studio中的OnClickListener
我正在尝试使用新的Android Studio开发和应用程序,但我的OnClickListeners上不断收到重大错误。主要是告诉我它不能解析符号“setOnClickListener”,也不能解析“View v” 这是类中的代码Java Android Studio中的OnClickListener,java,android,Java,Android,我正在尝试使用新的Android Studio开发和应用程序,但我的OnClickListeners上不断收到重大错误。主要是告诉我它不能解析符号“setOnClickListener”,也不能解析“View v” 这是类中的代码 Information:Compilation completed with 11 errors and 0 warnings in 4 sec Information:11 errors Information:0 warnings /Users/angelo/An
Information:Compilation completed with 11 errors and 0 warnings in 4 sec
Information:11 errors
Information:0 warnings
/Users/angelo/AndroidStudioProjects/SigmaChiDerbyDaysProject/SigmaChiDerbyDays/src/main/java/com/sigmachi/derbydays/MainActivity.java
Error:Error:line (28)Gradle: <identifier> expected
Error:Error:line (28)Gradle: illegal start of type
Error:Error:line (28)Gradle: ')' expected
Error:Error:line (28)Gradle: ';' expected
Error:Error:line (28)Gradle: invalid method declaration; return type required
Error:Error:line (30)Gradle: illegal start of type
Error:Error:line (30)Gradle: ';' expected
Error:Error:line (30)Gradle: ')' expected
Error:Error:line (30)Gradle: not a statement
Error:Error:line (30)Gradle: ';' expected
Error:Error:line (33)Gradle: illegal start of type
您将需要在方法内单击initilization按钮,而不是尝试在类级别初始化视图,如下所示:
Button button; //<< declare here..
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button= (Button) findViewById(R.id.standingsButton); //<< initialize here
// set OnClickListener for Button here
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
startActivity(new Intent(MainActivity.this,StandingsActivity.class));
}
});
}
按钮//
此代码不在任何方法中。如果要使用它,它必须位于类似OnCreate()
这对我很有用:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_newarea);
btnSave = (Button)findViewById(R.id.btnSave);
OnClickListener btnListener = new OnClickListener() {
@Override
public void onClick(android.view.View view) {
finish();
}
};
btnSave.setOnClickListener(btnListener);
}
和Nic007之前说的一样
您确实需要在“onCreate”方法中编写代码。我也为缩进感到抱歉。。。(此处第一条注释)确保您已在AndroidManifest.xml中声明了StandingActivity
Activity?您能否解释此代码的工作原理,以及在回答中设置代码的格式(使用四个空格)。
Button button; //<< declare here..
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button= (Button) findViewById(R.id.standingsButton); //<< initialize here
// set OnClickListener for Button here
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
startActivity(new Intent(MainActivity.this,StandingsActivity.class));
}
});
}
Button button= (Button) findViewById(R.id.standingsButton);
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
startActivity(new Intent(MainActivity.this,StandingsActivity.class));
}
});
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button= (Button) findViewById(R.id.standingsButton);
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
startActivity(new Intent(MainActivity.this,StandingsActivity.class));
}
});
}
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_newarea);
btnSave = (Button)findViewById(R.id.btnSave);
OnClickListener btnListener = new OnClickListener() {
@Override
public void onClick(android.view.View view) {
finish();
}
};
btnSave.setOnClickListener(btnListener);
}
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my);
titolorecuperato = (TextView) findViewById(R.id.textView);
String stitolo = titolorecuperato.getText().toString();
Button btnHome = (Button) findViewById(R.id.button);
btnHome.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
}
});
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == R.id.standingsButton) {
startActivity(new Intent(MainActivity.this,StandingsActivity.class));
return true;
}
return super.onOptionsItemSelected(item);
}