fuda9527 2017-07-19 07:36 采纳率: 100%
浏览 2699
已采纳

编译能通过,为什么在手机上运行会直接闪退呢

package com.example.mylove;

import android.app.Dialog;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class MainActivity extends AppCompatActivity {

private int num ;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Button go = (Button) super.findViewById(R.id.go);
    EditText et = (EditText) super.findViewById(R.id.et);
    this.num = Integer.parseInt(et.getText().toString());
    go.setOnClickListener(new OnClickListener1());}
    private class  OnClickListener1 implements View.OnClickListener {
    @Override
    public void onClick(View view){


        if(forgive(num)==1){
            Dialog dialog= new AlertDialog.Builder(MainActivity.this)
                    .setTitle("you win yourself")
                    .setMessage("我还能说什么呢?当然是选择原谅她!")
                    .setIcon(R.drawable.forgive)
                    .create();
            dialog.show();}
        else{
           Dialog dialog2 = new AlertDialog.Builder(MainActivity.this)
                    .setTitle("you lose her").setMessage("天涯何处无芳草,请大侠重新来过!")
                    .setIcon(R.drawable.saybyebye)
                    .create();
            dialog2.show();}
    }





}

```<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    tools:context="com.example.mylove.MainActivity"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#ff00ff00"
    >
    <TextView
        android:gravity="center"
        android:textSize="25sp"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/word1"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />
    <TextView

        android:text="@string/word2"
        android:textSize="15sp"
        android:gravity="center"
        android:layout_above="@+id/et"
        android:layout_height="wrap_content"
        android:layout_width="fill_parent"/>
    <EditText
        android:id="@+id/et"
        android:gravity="center"
        android:hint="@string/forgive"
        android:inputType="number"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_above="@+id/go"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />

    <Button
        android:id="@+id/go"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:layout_centerInParent="true"
        android:hint="@string/go" />
</RelativeLayout>



  • 写回答

2条回答 默认 最新

  • liuAsang 2017-07-20 03:37
    关注

    图片说明

    你在onCreate方法中声明了et控件后就调用了获取数据的方法,这个时候EditTExt控件内还没有内容,图片说明

    hint 属性只是提示作用,通过et.getText(0.toString()方法获取不到
    可以在布局文件中给et一个text默认值或者this.num = Integer.parseInt(et.getText().toString());这句代码放到点击事件内,先对et控件内数据进行非空判断
    比如:
    if(!TextUtils.isEmpty(et.getText(0.toString().trin())){//如果控件内数据不为空
    this.num = Integer.parseInt(et.getText().toString());
    if(forgive(num)==1){
    Dialog dialog= new AlertDialog.Builder(MainActivity.this)
    .setTitle("you win yourself")
    .setMessage("我还能说什么呢?当然是选择原谅她!")
    .setIcon(R.drawable.forgive)
    .create();
    dialog.show();}
    else{
    Dialog dialog2 = new AlertDialog.Builder(MainActivity.this)
    .setTitle("you lose her").setMessage("天涯何处无芳草,请大侠重新来过!")
    .setIcon(R.drawable.saybyebye)
    .create();
    dialog2.show();}
    }

    就不会报错了,可以看代码的错误日志,会明确指出问题在哪里

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
  • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序
  • ¥15 onvif+openssl,vs2022编译openssl64
  • ¥15 iOS 自定义输入法-第三方输入法
  • ¥15 很想要一个很好的答案或提示
  • ¥15 扫描项目中发现AndroidOS.Agent、Android/SmsThief.LI!tr
  • ¥15 怀疑手机被监控,请问怎么解决和防止
  • ¥15 Qt下使用tcp获取数据的详细操作
  • ¥15 idea右下角设置编码是灰色的