文本字段为空,即使其中有值

Posted

技术标签:

【中文标题】文本字段为空,即使其中有值【英文标题】:Textfield is null even when there is value in it 【发布时间】:2018-11-14 11:21:51 【问题描述】:

我正在使用片段,必须在它的 Textfield 中。一个是姓名,另一个是电话号码。两者的验证都很好。但是当我敬酒时,它说 null/false。

EditText tPername = (EditText) getView().findViewById(R.id.txtPer);

这是xml

            <EditText
            android:layout_
            android:layout_
            android:id="@+id/txtPer"
            android:layout_marginBottom="15dp"
            android:background="@drawable/textbox"
            android:layout_gravity="center_horizontal"
            android:inputType="textPersonName"/>

当我 Toast R.id.txtPer 时,它显示为 null。 这是我的java代码

   @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) 
    view = inflater.inflate(R.layout.fragment_add_customer, container, false);
    view.findViewById(R.id.button3).setOnClickListener(new View.OnClickListener() 
        @Override
        public void onClick(View view) 
            doAdd(view);
        
    );
    return view;

public void doAdd(View view) 

    String MobilePattern = "[0-9]10";

    EditText tPername = (EditText) getView().findViewById(R.id.txtPer);
    EditText tMobnum = (EditText) getView().findViewById(R.id.txtMob);
if (TextUtils.isEmpty(tPername.getText().toString())) 
    tPername.setError("Please fill this field");
    return;
    else if (!tMobnum.getText().toString().matches(MobilePattern)) 
        tMobnum.setError("Mobile number must be entered 10 digits only");
        return;
    

【问题讨论】:

显示你的java代码 好的,我将使用 Log。但是 R.id.txtPer 总是说 null 发布你的java代码 你需要发布你的java代码 这是上面的java代码 【参考方案1】:
type a (EditText tPername = (EditText) getView().findViewById(R.id.txtPer);)

in the onViewCreated

@Override
    public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) 
        super.onViewCreated(view, savedInstanceState);

EditText tPername = (EditText) getView().findViewById(R.id.txtPer);
    

【讨论】:

【参考方案2】:
String name= tPername.getText().toString();

这解决了我的问题。谢谢

【讨论】:

以上是关于文本字段为空,即使其中有值的主要内容,如果未能解决你的问题,请参考以下文章

插入mysql数据库,sql语句没错,每个字段都有值,但到插入到数据库后值为空。为啥?

Django:表单中的电子邮件字段返回“此字段不能为空/此字段不能为空”,即使其中有地址

sql中更新某个字段中部分空值的语句怎样写?

Laravel Eloquent:如果搜索文本字段为空,如何显示所有行

我在数据库中新添一个时间字段 值为null 做一些操作报错 如果把值填为2010-1-1就不没错了 咋解决

Django 模板 - 检查字段中是不是有值,如果 ManyToManyField 则为空