- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我仍然是 Android 开发的新手,我想做的是创建一个监听器,它将包含两个 TextView 对象,它们分别保存面积和周长。宽度和高度是 EditText 对象。输入宽度和高度后,应根据 calcArea 和 calcPerimeter 方法实时显示周长和面积值。我用于监听器的代码基于我在此处找到的示例。我的代码:
package com.jtryon.rectanglecalc;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.app.ActionBar;
import android.support.v4.app.Fragment;
import android.text.Editable;
import android.text.TextWatcher;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.EditText;
import android.widget.TextView;
import android.os.Build;
public class MainActivity extends ActionBarActivity {
// fields in the class
// variables that are global to this file
double width;
double height;
double area;
double perimeter;
// "handles" to the objects from the XML
EditText widthEdit;
EditText heightEdit;
TextView areaText;
TextView perimText;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// set up handles
widthEdit = (EditText)findViewById(R.id.width_edit);
heightEdit = (EditText)findViewById(R.id.height_edit);
areaText = (TextView)findViewById(R.id.area_value);
perimText = (TextView)findViewById(R.id.perim_value);
widthEdit.addTextChangedListener(
new TextWatcher() {
@Override
public void afterTextChanged(Editable arg0) {
// TODO Auto-generated method stub
// read the width out of widthEdit
String widthString = widthEdit.getText().toString();
// convert the String into a double
if (widthString.length() > 0) {
width = Double.parseDouble(widthString);
}
// read the height out of heightEdit
String heightString = heightEdit.getText().toString();
if (heightString.length() > 0) {
height = Double.parseDouble(heightString);
}
// calculate area
double area = calcArea();
// calculate perimeter
double perim = calcPerim();
// set the label for areaText
areaText.setText(Double.toString(area));
// set the label for perimText
perimText.setText(Double.toString(perim));
}
@Override
public void beforeTextChanged(CharSequence s, int start,
int count, int after) {
// TODO Auto-generated method stub
}
@Override
public void onTextChanged(CharSequence s, int start,
int before, int count) {
// TODO Auto-generated method stub
}
}
);
}
double calcArea()
{
return width * height;
}
double calcPerim()
{
return 2 * width * height;
}
}
最佳答案
在 onCreate 中的编辑文本下定义它
youredittext.addTextChangedListener(new TextWatcher()
{
@Override
public void onTextChanged(CharSequence s, int start, int before, int count)
{
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int aft )
{
}
@Override
public void afterTextChanged(Editable s)
{
//call your function here of calculation here
yourfunctioname();
}
});
关于android - TextChanged 监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23257919/
最近有人问我是否可以在 Excel VBA 中制作一个宏,允许用户输入两个数字并让它自动放到下一行。这样做的目的是让他们可以一次输入两个数字的测试成绩,而无需按回车键,因为他们不擅长打字。 当我第一次
我在 Windows Phone 上的应用程序中有三个 TextBox。我想在用户在其中任何一个中插入输入后立即更改这三个 TextBox 的数值。 我的 xaml 看起来像这样: 我在 C#
我有 CalendarExtender 并将其绑定(bind)到文本框,但是当我在 textchanged 事件中编写代码时发现它没有触发;这里是我的代码片段: 代码隐藏: protected vo
我在做一个项目。我有文本框,通过 TextChanged 事件我将文本更改为大写 txt.ToUpper(); 然后 selectionStart 从头开始。我将其更改为 textbox.text
我仍然是 Android 开发的新手,我想做的是创建一个监听器,它将包含两个 TextView 对象,它们分别保存面积和周长。宽度和高度是 EditText 对象。输入宽度和高度后,应根据 calcA
我有一个文本框,它有一个相当庞大的 _TextChanged 事件处理程序。在正常打字条件下,性能还可以,但当用户执行长时间的连续操作时,性能会明显滞后,例如按住退格键一次删除大量文本。 例如,事件用
在尝试做一些更复杂的事情时,我遇到了一种我不太了解的行为。 假设下面的代码处理 textChanged 事件。 private void textChanged(object sender, Tex
我正在关注 M-V-VM我的 WPF UI 的模式。我想将文本框的 TextChanged 事件的命令连接到我的 ViewModel 类中的命令。我能想到的完成此任务的唯一方法是从 TextBox 控
我有一个简单的 aspx 文件 这是 test4.aspx.vb 代码文件 Partial Class test4 Inhe
我正在使用绑定(bind)到对象的基本文本框。基本上,我想要做的是每次编辑框中的文本并且用户取消选择框或编辑底层绑定(bind)数据时调用一个方法。我现在使用的是 TextChanged 事件,但这有
我的 TabControl 页面中有一个 RichTextBox。请注意,RichTextBox 是使用以下代码以编程方式创建的: TabPage addedTabPage = new TabPage
这是我的第一个问题。我接受过非常基本的 Java 培训,现在正在 Android Studio 中开发一个简单的应用程序。该应用程序是一个温度转换器,它读取一个文本字段,并在应用一种方法后,它实时在另
我有一个 TextChanged我的事件 ComboBox喜欢; private void comboBox1_TextChanged(object sender, EventArgs e) {
我仍在学习 C#,如果这是一个愚蠢的问题,请原谅我,也请原谅我的长篇文章,因为我不确定如何说这个,而不是“长”的方式。 我的场景: 我正在使用 DockPanel Suite对于我的应用程序,我有一个
关闭。这个问题需要debugging details .它目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and th
我刚开始使用 C# 和 Visual Studio,但遇到了问题。 我正在尝试使用 TextChanged 事件计算三个不同乘法的总值,因此每次我在用于乘法的文本框中输入数字时,总文本框都会更新。 t
所以我想做的是能够连续输入所有 10 个文本框。我从第一个开始,然后在输入 3 个字符后将焦点移至下一个,并在输入 3 个字符后将焦点移至下一个。 我已经完成了那部分,但是如果第二个文本框中已经有文本
我想知道是否有可能制作KeyDown TextChanged 之前的事件触发? 我为一个简单的 TextBox 添加了这两个事件现在我想检查是否 Delete键被按下。如果是, , 如果没有 .我创
我目前正在处理一个项目,但出于某种原因,我的文本框的 textchanged 事件没有触发。我试图在我的代码中放置一个断点,但他没有到达那里,所以他的事件没有触发 imo。
我在 xml 中制作了一个不可见的按钮,我想在我的 EditText 中创建某个字符串值时再次使按钮可见。当使用 if 语句满足值时,我使用了 TextWatcher 检查。然而,当显示按钮的代码被执
我是一名优秀的程序员,十分优秀!