【问题标题】:Double Click on Button Android双击按钮 Android
【发布时间】:2015-04-24 05:29:28
【问题描述】:

首先,这个问题被问过多次,然而,这些问题都没有得到任何程度的回答。我有一个适用于主要活动类的示例:

final Button button = (Button) findViewById(R.id.viewcatalog);
button.setFocusable(true);
button.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v) {
        setContentView(R.layout.find_item);
    }
 });

但我在连续页面中复制此内容的所有其他尝试都失败了。我知道它们不能以相同方式工作的原因是我的按钮是在其他类中实例化的,而不是在宿主类中。修复此错误的正确方法是什么?

不起作用的方法供参考:

public void OnClickSearch(View view) {
    final Button button = (Button) findViewById(R.id.button2);
    button.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            EditText text = (EditText)findViewById(R.id.editText);
            String value = text.getText().toString();
            setContentView(R.layout.search_results);
        }
    });
}

【问题讨论】:

  • 设置视图和监听器会发生什么,一旦你点击一个按钮,所有视图都会被新的视图替换,当然没有监听器。
  • 最近“双击”的定义变了吗?

标签: java android button methods


【解决方案1】:

听起来您对 UI 在 Android 中的工作方式有误解。 通常不会像在 OnClickListener 中那样动态更改 Activity 的视图。

相反,您应该做两件事中的一件。使用 Intent 和 Activity 的 startActivity 方法切换到新的 Activity,或者使用 Fragments,然后将 Activity 中的 Fragment 替换为新的 Fragment。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-18
    • 2014-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-31
    • 2018-02-04
    相关资源
    最近更新 更多