标签: textchanged

在EditText中更改文本后0.5秒,我该怎么办?

我正在使用EditText过滤我的列表.我想在用户输入EditText后0.5秒过滤列表.我为此目的使用了这个afterTextChanged事件TextWatcher.但是,对于EditText中的每个字符更改,此事件都会增加.

我该怎么办?

android filter textwatcher textchanged android-edittext

59
推荐指数
7
解决办法
3万
查看次数

为什么这不会导致无限循环的事件?

我有一个简单的应用程序,可以反转在另一个文本框中键入的任何文本.问题是,您可以修改任一文本框,更改将(字面上)反映在另一个文本框中.

我写了这段代码,相信它会引起问题.

private void realText_TextChanged(object sender, EventArgs e)
{
    mirrorText.Text = mirror(realText.Text);
}

private void mirrorText_TextChanged(object sender, EventArgs e)
{
    realText.Text = mirror(mirrorText.Text);
}

private string mirror(string text)
{
    return new string(text.Reverse().ToArray()).Replace("\n\r", "\r\n");
}
Run Code Online (Sandbox Code Playgroud)

然后我尝试了它,相信它会导致无限循环(realText变化mirrorText,另一个事件发生,mirrorText变化realText等).但是,除了预期的行为之外什么也没发生

我当然对此感到高兴,我可以把它放在这里.或者我可以吗?

我很确定TextChanged每当Text发生变化时都会被触发.这是事件中某些错误保护的预期行为,还是我很幸运?这个代码在另一台计算机,其他构建设置等上是否会出错?它可以很容易地修复:

private void realText_TextChanged(object sender, EventArgs e)
{
    if (realText.Focused)
    {
        mirrorText.Text = Mirror(realText.Text);
    }
}
Run Code Online (Sandbox Code Playgroud)

我可能会这样做是为了安全,但需要检查一下吗?(我甚至不会问是否推荐它.)

.net c# events winforms textchanged

35
推荐指数
2
解决办法
3358
查看次数

如何避免在AutoCompleteTextView上同时调用onItemClicked和onTextChanged

我有这个代码.当我从建议列表中选择一个项目时,onTextChanged首先发生,然后oItemClicked在此之后发生.现在我想在选择单词时首先出现"onItemClicked",然后出现"onTextChanged".我看了一下Android doc,但没有提到这个话题.

package com.autocompletetest;


import java.util.Arrays;
import java.util.List;

import android.app.Activity;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;

public class OnItemClickAndOnTextChangedActivity extends Activity implements TextWatcher, OnItemClickListener {
    private AutoCompleteTextView textView;

    private static final String[] TEMP = new String[] {
        "Beep", "Belgium", "Best", "Bubble", "Bye"
    };
    @Override
    protected void onCreate(final Bundle icicle) {
        super.onCreate(icicle);
        setContentView(R.layout.main);

        textView = (AutoCompleteTextView)findViewById(R.id.autoCompleteTextView1);
        textView.setOnItemClickListener(this);
        textView.addTextChangedListener(this);
        textView.setThreshold(1);

        final List<String> list = Arrays.asList(TEMP);

        final ArrayAdapter<String> adapter = new ArrayAdapter<String>(
                OnItemClickAndOnTextChangedActivity.this, …
Run Code Online (Sandbox Code Playgroud)

android autocompletetextview textchanged

21
推荐指数
1
解决办法
7581
查看次数

输入文本时立即触发TextBox.TextChanged

我有一个wpf TextBox,并连接了它的TextChanged事件.问题是此事件仅在焦点从文本框中删除时触发.

是否存在类似于TextChanged的事件,当字符键入文本框时会立即触发,而不是焦点更改时?

wpf events textbox lost-focus textchanged

14
推荐指数
2
解决办法
2万
查看次数

TextUpdate和TextChanged事件有什么区别?

对于每个控件都有很多事件,两个非常相似,如Text Update和Text Changed,唔是不同的?

c# event-handling textchanged

13
推荐指数
1
解决办法
1万
查看次数

为什么asp.net OnTextChanged不起作用

我使用ASP.NET更新面板使用TextChanged为文本框检索用户信息,这是我的代码:

<asp:UpdatePanel runat="server" ID="up1" ChildrenAsTriggers="true">
<ContentTemplate>
    <asp:TextBox runat="server" ID="loginEmail" Text="Email" 
        CssClass="textBoxes" OnTextChanged="userInfo" AutoPostBack="true"></asp:TextBox>
</ContentTemplate>
<Triggers>
    <asp:AsyncPostBackTrigger ControlID="loginEmail" EventName="TextChanged" />
</Triggers>
</asp:UpdatePanel>
Run Code Online (Sandbox Code Playgroud)

和背后的代码:

string url, emailInfo;
emailInfo = loginEmail.Text;
url = Membership.GetUserNameByEmail(emailInfo);

emailText.InnerText = "Email: " + emailInfo;
urlText.InnerText = "Webiste: http://www.Elwazefa.com/User/" + url ; 
Run Code Online (Sandbox Code Playgroud)

在ButtonClick或PageLoad 上,代码不会在textchanged上触发,但它会消失.

问题是什么?

使用ASP.NET 4.0

asp.net updatepanel textchanged

10
推荐指数
1
解决办法
3万
查看次数

如何仅在用户停止键入时处理TextChanged事件?

我有TextBox一个TextChanged事件接线.最后它正在查询SQL数据库,所以我想限制查询的数量.

我只想在用户没有按下一个键的情况下进行查询,比如说... 300毫秒左右.如果由于某种原因上一个查询仍在执行,我需要取消它,然后发出一个新查询.

c# textbox winforms textchanged

9
推荐指数
1
解决办法
5098
查看次数

检测输入密钥C#

我有以下代码,按下enter/return时不显示MessageBox.

对于任何其他键(即字母/数字),MessageBox显示为False.

private void cbServer_TextChanged(object sender, EventArgs e)
{
    if (enterPressed)
    {
        MessageBox.Show("Enter pressed");
    }
    else
        MessageBox.Show("False");
}

private void cbServer_Keydown(object sender, KeyEventArgs e)
{
    if (e.KeyCode == Keys.Enter || e.KeyCode == Keys.Return)
    {
        enterPressed = true;
        MessageBox.Show("Enter presssed: " + enterPressed);

    }
    else
        enterPressed = false;
}
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

编辑:上面的代码,我认为问题是_Keydown,所以我只发布了.

c# keydown textchanged

9
推荐指数
2
解决办法
6万
查看次数

如何使用带有许多片段的onQueryTextChange

我有很多片段,它们以2个标签布局显示,FragmentStatePagerAdapter在每个片段中都有一个Recycler视图,我想在应用栏中使用搜索栏来过滤结果.

首先,我这样做是使用onQueryTextChange listener在onCreateOptionsMenu它工作得很好用几个片段,但是当我加入了执行到其他片段(只是CTRL + C和Ctrl + V)也停止工作,没有结果甚至是用来工作片段我然后在这里读到,最好坚持onQueryTextChange listener in onPrepareOptionsMenu试图避免与invalidateOptionsMenu的问题,但我决定给一个尝试也工作,然后当我将方法添加到我所有的其他片段,但它再次失败,但它确实在一些片段上工作,奇怪的是这些片段恰好全部附加到同一个父片段,但是4个父片段的代码和调用它们的代码是相同的.

我已经阅读的另一种方法是creating an interface通过获取对当前片段的引用从我的主要活动中使用它然后id必须从我的viewpager获取当前显示的片段,我不知道是否有可能任何人都可以权衡这个为了我,

非常感谢

并感谢伟大的编辑大声笑

编辑 尝试接口方法无济于事,虽然我还是初学者,我确实需要找到附加的片段,并且使用fragmentstateviewpager它是不可能的,如果没有使用黑客,必须有一些理由为什么它适用于某些而不是其他的,有时候一点也不

编辑2

所以即时通讯仍然摆弄这个,我几乎没有回复所以让我的肉体这一点,所以我在主要活动中添加菜单布局,像这样

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.dashboard, menu);
    SearchView searchView =  
    (SearchView)menu.findItem(R.id.action_search).getActionView();
    SearchManager searchManager = (SearchManager)  
    getSystemService(SEARCH_SERVICE);

    searchView.setSearchableInfo(searchManager
    .getSearchableInfo(getComponentName()));

    return true;
}
Run Code Online (Sandbox Code Playgroud)

然后从onPrepareOptionsMenu中的片段添加一个监听器,就像这样

@Override
public void onPrepareOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items …
Run Code Online (Sandbox Code Playgroud)

android textchanged android-fragments searchview

9
推荐指数
1
解决办法
1860
查看次数

Qt5:告诉 QPlainTextEdit 忽略语法高亮更改

QPlainTextEdit我的应用程序中有一个QSyntaxHighlighter分配给它的小部件。在该文本编辑区域内的每个内容更改时,我需要收到通知(以更新全局应用程序保存/更改状态)。但是,textChanged()每次荧光笔开始工作时也会发出信号,我需要以某种方式过滤掉。

我已经看过了modificationChanged(),但这似乎也不起作用。它忽略突出显示的更改并在第一次内容更改时成功通知我,但不会通知我任何后续更改。该文件提到,我应该能够与复位内部状态setModified(false),但这种方法似乎并不存在。

关于如何过滤更改的任何想法?

我一定要切换到QTextDocument似乎有哪些单contentsChanged()忽略语法高亮的变化?

c++ syntax-highlighting textchanged qplaintextedit qt5

6
推荐指数
1
解决办法
986
查看次数