【问题标题】:setOnClickListener causes force close in AndroidsetOnClickListener 在 Android 中导致强制关闭
【发布时间】:2012-03-19 18:15:34
【问题描述】:

我正在尝试为按钮创建一个 onClickListener。在我创建事件侦听器之前一切正常,但是当我添加它时强制关闭。

代码如下: 包 com.austin.mobile;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class TxtLingoActivity extends Activity {
/** Called when the activity is first created. */
Button convert;
EditText inputText, outputText;
String myCopy;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    this.setContentView(R.layout.main);

    convert = (Button) findViewById(R.id.inputTextBox);
    convert.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {
            // TODO Auto-generated method stub

        }
    });

}
}

这里是xml:

<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Input"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
    android:id="@+id/inputTextBox"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" >

    <requestFocus />
</EditText>


<Button
    android:id="@+id/convert"
    android:layout_gravity="right"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:clickable="true"
    android:text="Convert" />

<TextView
    android:id="@+id/textView2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Output"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
    android:id="@+id/outputTextBox"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" />

</LinearLayout>

Log Cat 显示此错误: 03-19 18:05:21.726: E/dalvikvm(662): 无法打开堆栈跟踪文件'/data/anr/traces.txt': 权限被拒绝

有什么建议吗?

【问题讨论】:

  • 按钮上不需要android:clickable="true"。如果您使用 eclipse ,请尝试 project > clean。此外,如果您使用模拟器擦除数据并重新开始。

标签: java android button forceclose


【解决方案1】:

看起来您在“查找”Button 时指的是不正确的 ID:

尝试改变这一点:

convert = (Button) findViewById(R.id.inputTextBox);

到这里:

convert = (Button) findViewById(R.id.convert);

希望这会有所帮助...

【讨论】:

  • 谢谢,我没注意到。
【解决方案2】:

它的ClassCastException在这行convert = (Button) findViewById(R.id.inputTextBox);

因为R.id.inputTextBoxEditText 并且您使用Button 。在R.id.convert 中更改它

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-02
    • 2016-08-25
    • 2011-11-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多