【发布时间】:2017-02-12 21:14:11
【问题描述】:
我花了将近 10 个小时来寻找答案。为什么我的应用在启动时崩溃。
我真正想要的是一个功能,当我在 Edittext 上单击 OK 时,文本将被写入 Text 视图。但首先要在类中创建该扩展片段时设置文本。
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);
}
}
我真正想要的是一个功能,当我在 Edittext 上单击 OK 时,文本将被写入 Text 视图
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.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)
【问题讨论】:
-
请为我们显示 logcat 错误。
-
当我打开片段时它崩溃了,这里的某个地方。 @Override public void onCreate(Bundle savedInstanceState) { Damage1pise = (TextView)getView().findViewById(R.id.Game1_writen_dmg_list_Player1); Damage1pise.setText("1234"); super.onCreate(savedInstanceState); } 错误
标签: onclick textview fragment settext textedit