Я хотел бы иметь две отдельные кнопки в одном случае OnClick с помощью переключателя заявление, но когда я сделал это, я получил эти ошибки, связанные с переменными jPBtn
и vFBtn
:Как сделать переменную кнопки видимой внутри события onClick?
vfBtn cannot be resolved or is not a field
jpBtn cannot be resolved or is not a field
Так Я знаю, что это означает, что переменные кнопки не могут быть видны событием клика, но вопрос, который мне задает вопрос, почему они не видны, поскольку я объявил их в onCreate и установил их в прослушиватель? Должен ли я снова объявлять их где-то в другом месте?
Это класс для справки:
public class MainActivity extends Activity implements android.view.View.OnClickListener {
Button jpBtn,vfBtn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
jpBtn = (Button)findViewById(R.id.JourneyPlanBtn);
jpBtn.setOnClickListener(this);
vfBtn = (Button)findViewById(R.id.FindCarBtn);
vfBtn.setOnClickListener(this);
}
@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 void onClick(View v) {
// TODO Auto-generated method stub
switch(v.getId()){
case R.id.jpBtn:
//DO something
Intent intent = new Intent(null, JourneyPlanner.class);
startActivity(intent);
break;
case R.id.vfBtn:
//DO something
Intent intent1 = new Intent(null, VechicleFinderMain.class);
startActivity(intent);
break;
}
Intent intent = new Intent(null, JourneyPlanner.class);
startActivity(intent);
}
}
Вы импортируете файл R надлежащим образом? – Egor
, если у вас есть идентификатор кнопки с одинаковыми именами в макете xml, попробуйте сохранить все ваши файлы. –
нет. У меня есть другое имя в классе и xml, также я попытался сохранить, очистить .. но все равно получить ошибку. Это ошибка в моем код? –