我正在尝试创建一个开关,该开关在启用时会隐藏一个名为button
的按钮,但它会为SetOnCheckedChangeListener和buttonView返回一个错误,显示为Cannot resolve symbol
package com.jordthedev.firstapplication;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.CompoundButton;
import android.widget.ToggleButton;
public class MainActivity extends AppCompatActivity {
int count = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void switchActivity(View v){
startActivity(new Intent(MainActivity.this, SecondActivity.class));
}
ToggleButton toggle = (ToggleButton) findViewById(R.id.toggleButton);
toggle.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if (isChecked) {
toggle.setVisibility(toggle.INVISIBLE);
} else {
toggle.setVisibility(toggle.VISIBLE);
}
}
});
}
也许您必须将ToggleButton放在onCreate()方法中,尝试下面的代码
package com.jordthedev.firstapplication;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.CompoundButton;
import android.widget.ToggleButton;
public class MainActivity extends AppCompatActivity {
int count = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final ToggleButton toggle = (ToggleButton) findViewById(R.id.toggleButton);
toggle.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if (isChecked) {
toggle.setVisibility(toggle.INVISIBLE);
} else {
toggle.setVisibility(toggle.VISIBLE);
}
}
});
}
public void switchActivity(View v){
startActivity(new Intent(MainActivity.this, SecondActivity.class));
}
}
用此替换您的
OnCheckedChangeListener
代码
ToggleButton toggle =(ToggleButton) findViewById(R.id.toggleButton);
toggle.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if (isChecked) {
toggle.setVisibility(toggle.INVISIBLE);
} else {
toggle.setVisibility(toggle.VISIBLE);
}
}
});