2015-10-23 3 views
-2
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    Intent fi = getIntent(); 
    if (fi.getExtras() != null) { 
     Rating = fi.getStringExtra("KEY_rating"); 
     Toast.makeText(getApplicationContext(), "Thanks for giving us " + Rating + " stars", Toast.LENGTH_LONG).show(); 
    } 
} 

Код внизу.Работа с объектами Андроида Студия

public void onSaveInstanceState(Bundle savedInstanceState) { 
    //save users values 
    super.onSaveInstanceState(savedInstanceState); 
    savedInstanceState.putDouble(SAVED_VALUE, dblInput); 
} 

У меня была ошибка на protected void onCreate(Bundle savedInstanceState) и public void onCreate(Bundle values) Крепится сейчас, это правильный способ получения намерений от другой деятельности.

+1

это дубликат объявление метода. Подпись это то же самое – Blackbelt

+0

** Какую ** ошибку вы получаете? Пожалуйста, добавьте цитату на свой вопрос. – Wolf

+0

как я могу это исправить? –

ответ

3

Метод onCreate дублируется. Я думаю, что вы расширяете класс с помощью метода protected void onCreate(Bundle savedInstanceState) и интерфейса с public void onCreate(Bundle values).

Если это случай, вы должны поместить весь свой код с помощью модификаций apropriates в реализацию с общедоступной видимостью и удалить реализацию с защищенной видимостью.

Если нет, выберите наилучшую реализацию видимости и поместите весь свой код там, удалив другой.

+0

Извините, я не следую:/ –

2

Метод onCreate дублируется.

0

Вы не можете иметь два метода с одинаковой сигнатурой в классе: так переименовать один из них

@Override 
protected void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
setContentView(R.layout.activity_main); 

Intent fi = getIntent(); 
if (fi.getExtras() != null) { 
    Rating = fi.getStringExtra("KEY_rating"); 
    Toast.makeText(getApplicationContext(), "Thanks for giving us " + 
     Rating + " stars", Toast.LENGTH_LONG).show(); 
} 


} 
//@Override 
public void onCreate_duplicate(Bundle values) { 
if (values != null){ 
    dblInput = values.getDouble(""); 
} 
} 
+0

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

+0

может отправить вашу точную ошибку? – parmeshwor11

+0

Метод 'onCreate_duplicate (android.os.Bundle)' никогда не используется –

2

извините, я не следую:/- мартин Drap

Попробуйте:

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    Intent fi = getIntent(); 
    if (fi.getExtras() != null) { 
     Rating = fi.getStringExtra("KEY_rating"); 
     Toast.makeText(getApplicationContext(), "Thanks for giving us " + Rating + " stars", Toast.LENGTH_LONG).show(); 
    } 

    if (savedInstanceState != null){ 
     dblInput = savedInstanceState.getDouble(""); 
    } 
} 
+0

, который избавился от этой ошибки, но я все еще не могу получить сохраненный экземпляр, который будет отображаться в editText при возврате из второго действия –

+0

, чтобы решить эту проблему, попробуйте сообщение [How для передачи значений из одной активности в предыдущую активность] (http://stackoverflow.com/questions/1124548/how-to-pass-the-values-from-one-activity-to-previous-activity). –

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