2016-10-17 48 views
-3

這是我的java類MainActivity.java。如何調試「很不幸<app>停止工作」的Android應用程序?

基本上我試圖創建一個按鈕執行添加變量i。據我所知,一切似乎都是正確的。我在我的模擬器上收到錯誤消息:

不幸的是myfirstandroidapp停止工作。

代碼:

package com.example.android.myfirstandroidapp; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.Button; 
import android.widget.TextView; 
import android.util.Log; 
public class MainActivity extends AppCompatActivity { 
    int i = 0; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
       super.onCreate(savedInstanceState); 
     Button button = (Button) findViewById(R.id.addButton); 
     final TextView txtView = (TextView) findViewById(R.id.textView); 
     button.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
       i++; 
       txtView.setText("i value is:"+i); 
      } 
     }); 
     setContentView(R.layout.activity_main); 
    } 
} 

這是我layout.xml

main_activity.xml:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:id="@+id/activity_main" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    tools:context="com.example.android.myfirstandroidapp.MainActivity"> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Your value is:0" 
     android:id="@+id/textView" 
     android:textColor="@android:color/black" 
     android:textStyle="normal|bold" 
     android:textSize="14dp" /> 

    <Button 
     android:text="Add One" 
     android:layout_width="100dp" 
     android:layout_height="20dp" 
     android:layout_marginTop="25dp" 
     android:id="@+id/addButton" 
     android:background="@android:color/holo_green_dark" 
     android:layout_below="@+id/textView" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" /> 
</RelativeLayout> 
+1

請把一個真正的標題,這不是一個論壇。 –

+0

當您的應用程序停止時提問問題檢查logcat ...然後如果您找不到問題,請搜索錯誤,並且無法找到問題所在的答案或類似問題,然後將問題作爲問題發佈到此處 –

回答

4

你需要初始化任何視圖之前調用的setContentView()。

@Override 
protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    Button button = (Button) findViewById(R.id.addButton); 
    final TextView txtView = (TextView) findViewById(R.id.textView); 
    button.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      i++; 
      txtView.setText("i value is:"+i); 
     } 
    }); 

} 
相關問題