Как изменить TextView во фрагменте при создании или при вызове кнопки

Почти 10 часов ищу ответ. Почему мое приложение вылетает при запуске.

Что мне действительно нужно, так это функция, которая, когда я нажимаю OK в Edittext, текст будет написан в текстовом представлении. Но сначала просто нужно установить текст при создании в классе этого фрагмента экстента.

package youtube.demo.youtubedemo.Fragments.Calculator_list;
import android.app.Fragment;
import android.app.FragmentManager;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.EditText;
import android.widget.TextView;
import youtube.demo.youtubedemo.R;
public class Calculator_list extends Fragment  {
View view;
    FragmentManager fragmentManager;

public Calculator_list() {
}
TextView Damage1pise;
    EditText Damage1beri;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

        view = inflater.inflate(R.layout.fragment_calculator_list, container, false);
     Damage1beri = (EditText) view.findViewById(R.id.Game1_read_dmg_list_Player1);
        Damage1pise = (TextView)view.findViewById(R.id.Game1_writen_dmg_list_Player1);
        Damage1pise.setText("123");
        return view;
    }
    public TextView Returnelement ()
    {
        return  Damage1pise;
    }
    @Override
    public void onCreate(Bundle savedInstanceState) {

        Damage1pise = (TextView)getView().findViewById(R.id.Game1_writen_dmg_list_Player1);
        Damage1pise.setText("1234");

        super.onCreate(savedInstanceState);
    }
}

Что мне действительно нужно, так это функция, которая, когда я нажимаю «ОК» в «Редактировать текст», текст будет написан в текстовом представлении.

public void OnButton1click(View v)
{
  Damage1.settext(v.text)    

 // This is hard coded, First I want to set text on create then go on whit the code



}

Вот ошибки. E/AndroidRuntime: НЕИСПРАВНОЕ ИСКЛЮЧЕНИЕ: основной процесс: youtube.demo.youtubedemo, PID: 2736 java.lang.NullPointerException: попытка вызвать виртуальный метод «android.view.View android.view.View.findViewById(int)» для нулевого значения ссылка на объект в youtube.demo.youtubedemo.Fragments.Calculator_list.Calculator_list.onCreate(Calculator_list.java:47) в android.app.Fragment.performCreate(Fragment.java:2335) в android.app.FragmentManagerImpl.moveToState(FragmentManager.java :949) в android.app.BackStackRecord.setLastIn(BackStackRecord.java:857) в android.app.BackStackRecord.calculateFragments(BackStackRecord.java:897) в android.app.BackStackRecord.run(BackStackRecord.java:727) в android.app.BackStackRecord.run(BackStackRecord.java:727) в android .app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1578) в android.app.FragmentManagerImpl$ 1.run(FragmentManager.java:483) в android.os.Handler.handleCallback(Handler.java:751) в android.os.Handler.dispatchMessage(Handler.java:95) в android.os.Looper.loop(Looper .java:154) в android.app.ActivityThread.main(ActivityThread.java:6077) в java.lang.reflect.Method.invoke(собственный метод) в com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit .java:865) на com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)


person Jaka Basej    schedule 12.02.2017    source источник
comment
Пожалуйста, покажите нам ошибки logcat.   -  person statosdotcom    schedule 13.02.2017
comment
Когда я открываю фрагмент, он вылетает, где-то здесь. @Override public void onCreate(Bundle saveInstanceState) { Damage1pise = (TextView)getView().findViewById(R.id.Game1_writen_dmg_list_Player1); Damage1pise.setText(1234); super.onCreate(savedInstanceState); } Ошибки   -  person Jaka Basej    schedule 14.02.2017


Ответы (1)


В этой строке показанного кода оба метода подтверждают, что у вас есть пробел между (TextView) и концом предложения, как показано ниже:

Damage1pise = (TextView) getView().findViewById(R.id.Game1_writen_dmg_list_Player1);

Кроме того, подтвердите, что у вас есть текстовое представление для вызываемого файла макета xml с именем Game1_writen_dmg_list_Player1, поскольку ошибка возникает из-за нулевой ссылки, т. е. вы вызываете элемент не найден (возможно, написано с двумя t?).

person statosdotcom    schedule 14.02.2017
comment
@Jaka Basej извините, могу я чем-нибудь помочь? Спасибо. - person statosdotcom; 23.03.2017
comment
@Jaka Basej, пожалуйста, ты нашел свою проблему? Это та штука, которую я тебе указал после анализа? Если да, пожалуйста, признайте мои усилия в вашу пользу. Спасибо. - person statosdotcom; 21.04.2017