gpt4 book ai didi

c# - 为什么 TextChanged 事件在此 Xamarin.Android 代码中不起作用?

转载 作者:搜寻专家 更新时间:2023-11-01 07:49:49 25 4
gpt4 key购买 nike

在 Xamarin.Android 应用程序中,遵循 https://developer.xamarin.com/videos/?v=Activities_and_Intents 中的示例(19:55) 我正在尝试将事件处理程序分配给按钮的 onclick 事件,与上面的视频类似,我不想调用委托(delegate)或 lambda,而只是调用在别处定义的方法。这在我的代码中不起作用,但如果我使用委托(delegate),它会...你能解释为什么吗?

此外,我正在尝试对 EditText 执行相同的操作,我想为其添加文本更改时的事件。但这也行不通..

public class MainActivity : Activity

{
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);

Button button = FindViewById<Button>(Resource.Id.MyButton);
button.Click += delegate { button.Text = "clicked!" };
// this works

Button searchButton = FindViewById<Button>(Resource.Id.searchButton);
searchButton.Click += SearchButton_Click;

EditText artistNameEditText = FindViewById<EditText>(Resource.Id.artistNameEditText);
artistNameEditText.TextChanged += artistNameEditText_TextChanged;
}

private void SearchButton_Click(object sender, EventArgs e)
{
Console.WriteLine("button pressed!");
// this is not working!
}

private void artistNameEditText_TextChanged(object sender, TextChangedEventArgs e)
{
Console.WriteLine("text has changed!");
// this is not working!
}
}

最佳答案

我的代码没有任何问题。

它不工作的原因是......我在部署新版本之前没有从设备上卸载我的应用程序,所以我一遍又一遍地运行旧版本。我想当然地认为旧版本会被新版本取代,就像您再次安装同一个 APK 的新版本一样。发现它有点问题,因为我没有对 UI 进行任何更改,而只是试验事件处理程序。

嗯,吸取教训,希望这对其他人有帮助......

关于c# - 为什么 TextChanged 事件在此 Xamarin.Android 代码中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36464413/

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