- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我将从用户那里获取两个数字,但是这个来自 EditText
的数字必须转换为 int
。我认为它应该可以工作,但我在 Android Studio 中的编译代码仍然有问题。
CatLog 显示错误符合:
int wiek = Integer.parseInt(wiekEditText.getText().toString());
下面是我完整的 Android 代码:
public class MyActivity extends ActionBarActivity {
int Wynik;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my);
int Tmax, RT;
EditText wiekEditText = (EditText) findViewById(R.id.inWiek);
EditText tspoczEditText = (EditText) findViewById(R.id.inTspocz);
int wiek = Integer.parseInt(wiekEditText.getText().toString());
int tspocz = Integer.parseInt(tspoczEditText.getText().toString());
Tmax = 220 - wiek;
RT = Tmax - tspocz;
Wynik = 70*RT/100 + tspocz;
final EditText tempWiekEdit = wiekEditText;
TabHost tabHost = (TabHost) findViewById(R.id.tabHost); //Do TabHost'a z layoutu
tabHost.setup();
TabHost.TabSpec tabSpec = tabHost.newTabSpec("Calc");
tabSpec.setContent(R.id.Calc);
tabSpec.setIndicator("Calc");
tabHost.addTab(tabSpec);
tabSpec = tabHost.newTabSpec("Hints");
tabSpec.setContent(R.id.Hints);
tabSpec.setIndicator("Hints");
tabHost.addTab(tabSpec);
final Button Btn = (Button) findViewById(R.id.Btn);
Btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(),"blablabla"+ "Wynik",Toast.LENGTH_SHORT).show();
}
});
wiekEditText.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
Btn.setEnabled(!(tempWiekEdit.getText().toString().trim().isEmpty()));
}
@Override
public void afterTextChanged(Editable s) {
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.my, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}
最佳答案
在不查看布局 XML 的情况下,通过阅读你想从用户那里获取 2 个数字的问题描述,我只能假设那 2 个 EditText
是空的 Activity 开始时。
@Override
protected void onCreate(Bundle savedInstanceState) {
...
EditText wiekEditText = (EditText) findViewById(R.id.inWiek);
EditText tspoczEditText = (EditText) findViewById(R.id.inTspocz);
// edit text are still empty...
int wiek = Integer.parseInt(wiekEditText.getText().toString()); // error occurs!
int tspocz = Integer.parseInt(tspoczEditText.getText().toString());
...
}
您可能希望在用户交互后解析数字,可能是将代码放入OnClickListener
或TextWatcher
此示例使用 OnClickListener
。计算将在用户点击按钮后完成。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my);
// add 'final'
final EditText wiekEditText = (EditText) findViewById(R.id.inWiek);
final EditText tspoczEditText = (EditText) findViewById(R.id.inTspocz);
// remove offending code
final EditText tempWiekEdit = wiekEditText;
TabHost tabHost = (TabHost) findViewById(R.id.tabHost);
...
final Button Btn = (Button) findViewById(R.id.Btn);
Btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// move the parsing code here
int Tmax, RT;
int wiek = Integer.parseInt(wiekEditText.getText().toString());
int tspocz = Integer.parseInt(tspoczEditText.getText().toString());
Tmax = 220 - wiek;
RT = Tmax - tspocz;
Wynik = 70*RT/100 + tspocz;
Toast.makeText(getApplicationContext(),"blablabla"+ Wynik,Toast.LENGTH_SHORT).show();
}
});
...
}
-或-
为防止错误,第一次通过在布局 XML 上添加 android:text="0"
来设置默认数字。
<EditText android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="number"
android:ems="10"
android:id="@+id/inTspocz"
android:layout_marginTop="25dp"
android:hint="Your resting heart rate (Hint)"
android:text="0" />
关于java.lang.NumberFormatException : unable to parse '' as integer one more time 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25478857/
在 Tomcat 6/Ubuntu 12.04 上启动 Grails 2.1.0 应用程序时出现以下错误。 Error 500 - Internal Server Error. groovy.lang
在运行 Storm 拓扑时,我收到此错误。拓扑完美运行 5 分钟,没有任何错误,然后失败。我正在使用 Config.TOPOLOGY_TICK_TUPLE_FREQ_SECS as 300 sec i
我有一个 jsp 代码在其中一台机器上运行良好。但是当我复制到另一台机器时,我得到了这个 no such method found 异常。我是 Spring 的新手。有人可以解释我错过了什么吗? 以下
已关闭。此问题需要 debugging details 。目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and the
我的代码在下面给出了一个错误; Exception in thread "main" java.lang.NoSuchMethodError: com/myApp/Client.cypherCBC(L
我正在尝试一个 Restful web 服务示例,所以当我要访问 url 时,我遇到了异常 java.lang.NoSuchMethodError: jersey.repackaged.com.goo
我正在将一个 Spring web 项目转换为一个 Maven 项目,但我收到了这个错误: java.lang.NoSuchMethodError: org.jboss.logging.Logger.
在我的项目中,我有一个像这样的枚举: public enum MyEnum { FIRST(1), SECOND(2); private int value; private MyEnum(int v
我创建了这个简单的示例,用于读取 Linux 正常运行时间: public String getMachineUptime() throws IOException { String[] di
我正在使用 Eclipse,并且正在使用 Java。我的目标是使用 bogoSort 方法对 vector 进行排序在一个 vector (vectorExample)中适应我的 vector 类型,
我正在运行以下查询。它显示一条错误消息。如何解决这个错误? ListrouteList=null; List companyList = session.createS
我有以下模型类: @Entity @Table(name="user_content") @org.hibernate.annotations.NamedQueries({ @org.
我有那个错误。这是我的代码: GmailSettingsService service = new GmailSettingsService(APPLICATION_NAME, DOMAIN_NAME
实际上我在执行我的java程序时遇到了下面提到的错误 Exception in thread "pool-1-thread-1" java.lang.ClassCastException: jav
java.lang.ClassCastException: java.lang.Float cannot be cast to java.lang.String 我在以下代码中遇到此异常: Strin
我正在尝试从 linkedhashset 中检索随机元素。下面是我的代码,但它每次都给我异常。 private static void generateRandomUserId(Set userIds
我已经完成了 Android 中的代码: List spinnerArray = new ArrayList(); for (int i = 0; i item = (LinkedTreeMap)
这个问题已经有答案了: Explanation of ClassCastException in Java (12 个回答) 已关闭 6 年前。 我已经编写了 java 到 Json 的代码,同时从页
这个问题在这里已经有了答案: ClassCastException java.lang.Long cannot be cast to clojure.lang.IFn (4 个答案) 关闭 6 年前
我在运行时遇到问题来编译这段代码,这给我一个错误,java.lang.Integer 无法转换为 Java.lang.Double。如果有人帮助我更正此代码,我将非常高兴 double x; pu
我是一名优秀的程序员,十分优秀!