Android 如何从EditText中获取字符串?
在“buttonClicked”函数的底部,我试图从我的EditText中获取字符串,但它显示“无法解析”数字。我不明白为什么它不能Android 如何从EditText中获取字符串?,android,string,android-edittext,Android,String,Android Edittext,在“buttonClicked”函数的底部,我试图从我的EditText中获取字符串,但它显示“无法解析”数字。我不明白为什么它不能 public class TopFragment extends Fragment { TopFragmentListener activityListener; public interface TopFragmentListener{ void createFrament(String numberOfFragments); } @Overrid
public class TopFragment extends Fragment {
TopFragmentListener activityListener;
public interface TopFragmentListener{
void createFrament(String numberOfFragments);
}
@Override
public void onAttach(Context context) {
super.onAttach(context);
try{
activityListener = (TopFragmentListener) context;
}catch (ClassCastException e){
throw new ClassCastException (context.toString());
}
}
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.main_fragment, container, false);
final Button btnAdd = view.findViewById(R.id.btnAdd);
EditText number = view.findViewById(R.id.number);
btnAdd.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
buttonClicked(v);
}
});
return view;
}
public void buttonClicked(View view) {
activityListener.createFrament(number.getText);
} }
将数字声明为全局:
EditText number;
然后,在函数按钮Clicked()中:
应该是这样的:
number.getText().toString();
number.getText().toString();
和EditText编号进行全局声明。首先,将编号声明为全局,然后它应该如下所示:
number.getText().toString();
number.getText().toString();
您正在
onCreate
上声明您的EditText。请将您的声明添加到全局,它类似于EditText编号
然后在函数中调用:
number.getText().toString()
谢谢您的方法
void createframentt(String numberOfFragments);
是必需的字符串作为参数。因此,在调用此方法时,请使用
activityListener.createFrament(number.getText.toString());
而不是
activityListener.createFrament(number.getText);
使用number.getText.toString();查看Java中的“scope”,将此行`activityListener.createFrament(number.getText().toString());`to onClick()方法