2016-03-10 2 views
-2

Привет Я студент колледжа, и я борюсь с приложением, которое я должен сделать. Приложение - приложение для вычитания, и я не могу заставить его работать. Каждый раз, когда я нажимаю кнопку вычитания, он падает.Subtraction App Java

Моего код:

public void onClick(View view){ 

    switch (view.getId()) { 
     case R.id.subtract_button: 

      setContentView(R.layout.activity_main); 

      EditText firstNumber = (EditText) findViewById(R.id.input_box_1); 
      int num1 = Integer.parseInt(firstNumber.getText().toString()); 

      EditText secondNumber = (EditText) findViewById(R.id.input_box_2); 
      int num2 = Integer.parseInt(secondNumber.getText().toString()); 

      int result = num1 - num2; 

      setContentView(R.layout.activity_result); 

      TextView subResult = (TextView)findViewById(R.id.result_view); 
      subResult.setText(Integer.toString(result)); 

      break; 

     case R.id.exit_button: // the 'exit' button has been pressed. 
      // Delay the exit by 1 second at this time! 
      new Handler().postDelayed(new Runnable() { 
       public void run() { 
        //Finish the app 
        finish(); 
       } 
      }, 1000); 
      break; // End of case. 

    } 
} 
+1

пост LogCat пожалуйста. –

+0

Не используйте 'setContentView()' где-нибудь, кроме вашего onCreate, и, конечно, не много раз с разными макетами. Вместо этого используйте разные действия, каждый из которых имеет свой собственный макет –

+0

Что такое 'setContentView (R.layout.activity_result);' –

ответ

1

В первом посте вашего Logcat

  1. Проблема для неправильного setContentView размещения.

  2. Почему несколько setContentView ?? Должно быть Один.

Не

switch (view.getId()) { 
    case R.id.subtract_button: 

     setContentView(R.layout.activity_main); // Problem here i guess 

ли

  1. setContentView вызов в вашем onCreate(Bundle savedInstanceState) разделе.

Активность - это единственная, сфокусированная вещь, которую пользователь может сделать. Почти все действия взаимодействуют с пользователем, поэтому класс Activity принимает заботу о создании окна для вас, в котором вы можете разместить свой пользовательский интерфейс с помощью setContentView (View).

@Override 
    protected void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 

     setContentView(R.layout.your_activity_name); 
0

Я думал, что вы пропустили кнопку объявление проверить его

Button button; 
button=(Button) findViewById(R.id.buttonid); 

или же опубликовать ур журнал