gpt4 book ai didi

java - 如何在 Java 数学运算中使用 EditText 值 (numberDecimal)

转载 作者:行者123 更新时间:2023-12-01 09:35:20 26 4
gpt4 key购买 nike

我有一个 EditText View :

  <EditText
android:id="@+id/vorgabezeit"
android:layout_width="50dp"
android:layout_height="wrap_content"
android:background="#0277BD"
android:imeOptions="actionDone"
android:inputType="numberDecimal"
android:maxLength="5"
android:textAlignment="textEnd"
android:textColor="#ffffff"
android:textCursorDrawable="@null"
android:textStyle="bold"
/>

在此 EditText 中输入的值我想在数学运算中使用它。在我有固定值之前:

public void submitOrder(View view) {
displayPrice((procente / myEditNum) * mitarbeiter);
}

其中变量定义为:

int procente = 120;
int mitarbeiter = 1;

现在,我在网上搜索了几个小时如何获取在 EditText 中输入的值并进一步使用 id,这与我得到的最接近:

public class MainActivity extends AppCompatActivity {
int procente = 120;
int mitarbeiter = 1;
EditText myEdit = (EditText) findViewById(R.id.vorgabezeit);
String myEditValue = myEdit.getText().toString();
double myEditNum = Double.parseDouble(myEditValue);

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

public void submitOrder(View view) {
displayPrice((procente / myEditNum) * mitarbeiter);
}
}

应用程序从一开始就崩溃了。感谢您的耐心和帮助。

最诚挚的问候,罗伯特

最佳答案

首先您需要在发生崩溃时发布 LogCat。

第二 在调用 setContentView 之前,您无法调用 findViewById。您应该在 onCreate 中初始化您的编辑文本。

// Initialize values in onCreate after setContentView
EditText myEdit;
String myEditValue;
double myEditNum;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
myEdit = (EditText) findViewById(R.id.vorgabezeit);
myEditValue = myEdit.getText().toString();
myEditNum = Double.parseDouble(myEditValue);
}

关于java - 如何在 Java 数学运算中使用 EditText 值 (numberDecimal),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39021927/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com