2016-08-25 6 views
0

Я получаю сообщение об ошибке для очень простой вещи. Я создал тестовую кнопку и метод onClick, чтобы просто изменить макет. сделал это простым способом, чтобы вы могли лучше понять мою проблему.Метод Onclick не найден в контексте родителя или предка

это мой метод

public void accountButton (View v){ 
    setContentView(R.layout.activity_start); 
} 

кнопку и это XML-файл моей кнопки

<Button 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Test" 
    android:id="@+id/button" 
    android:layout_below="@+id/welcomeTxt" 
    android:layout_centerHorizontal="true" 
    android:layout_marginTop="149dp" 
    android:onClick="accountButton" 
    android:nestedScrollingEnabled="true" /> 

я получаю следующее сообщение об ошибке при нажатии кнопки

Java. lang.IllegalStateException: Не удалось найти метод accountButton (View) в родительском или предком Контекст для андроид: OnClick атрибут, определенный на вид класса android.support.v7.widget.AppCompatButton с «кнопкой» ид

+4

сообщение кода деятельности тоже. –

ответ

1

вы не должны вызывать setContentView(R.layout.activity_start); внутри onClick() mentod из кнопки .Вы должны вызвать setContentView (R .layout.activity_start); внутри oncreate() способ.

Следуйте инструкциям, чтобы достичь этого.

  1. реализовать OnClickListener в классе
  2. инициализировать кнопку в onCreate()

    Button button = (Button) findViewById(R.id.button); 
    
  3. установить кнопку setOnClickListener() метод для

    btn.setOnClickListener() 
    
  4. затем вызов метода вне oncreate()

    public void accountButton (View v){ //do some thing which you want } 
    

 Смежные вопросы

  • Нет связанных вопросов^_^