2013-05-06 71 views
0

我完全是一個初學者的android開發人員,但是一個很好的Java J2SE Developer。我只是想知道,當我在開發第一款Android應用程序時:在編譯它之後,沒有任何錯誤在模擬器中運行時遇到問題!我的java代碼類是: package com.example.helloworld;不幸的是HelloWorld已停止(我的應用程序停在模擬器上:不幸)

import android.os.Bundle; 
import android.app.Activity; 
import android.view.Menu; 
import android.widget.Button; 

public class MainActivity extends Activity { 

//Variables Declaration 
private Button one; 
private Button two; 
private Button three; 
private Button four; 
private Button five; 
private Button six; 
private Button seven; 
private Button eight; 
private Button nine; 
private Button plus; 
private Button minus; 
private Button divide; 
private Button multiply; 
private Button zero; 
private Button dot; 
private Button equal; 
private Button clr; 
//End of Variables Declaration 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    setContentView(R.layout.activity_main); 
    addListenerOnButton(); 



} 

public void addListenerOnButton(){ 
    one=(Button) this.findViewById(R.id.button1); 
    two=(Button) this.findViewById(R.id.button2); 
    three=(Button) this.findViewById(R.id.button3); 
    four=(Button) this.findViewById(R.id.button4); 
    five=(Button) this.findViewById(R.id.button5); 
    six=(Button) this.findViewById(R.id.button6); 
    seven=(Button) this.findViewById(R.id.button7); 
    eight=(Button) this.findViewById(R.id.button8); 
    nine=(Button) this.findViewById(R.id.button9); 
    zero=(Button) this. findViewById(R.id.button14); 
    dot=(Button) this.findViewById(R.id.button15); 
    plus=(Button) this.findViewById(R.id.button13); 
    equal=(Button) this.findViewById(R.id.button16); 
    clr=(Button) this.findViewById(R.id.button17); 
} 


@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.main, menu); 
    return true; 
} 


} 

的.XML是:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:id="@+id/rel" 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
android:background="@style/AppBaseTheme" 
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=".MainActivity" > 

<LinearLayout 
    android:id="@+id/lay" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentLeft="true" 
    android:orientation="vertical" > 

    <EditText 
     android:id="@+id/numf2" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:ems="10" 
     android:inputType="numberDecimal" /> 

    <EditText 
     android:id="@+id/opf" 
     android:layout_width="290dp" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="16dp" 
     android:ems="10" 
     android:inputType="numberDecimal|text" /> 

    <EditText 
     android:id="@+id/numf1" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="26dp" 
     android:ems="10" 
     android:inputType="numberDecimal" > 

     <requestFocus /> 
    </EditText> 
</LinearLayout> 

<Button 
    android:id="@+id/button2" 
    style="?android:attr/buttonStyleSmall" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignTop="@+id/button1" 
    android:layout_toRightOf="@+id/button1" 
    android:text="2" 
    /> 

<Button 
    android:id="@+id/button3" 
    style="?android:attr/buttonStyleSmall" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignBaseline="@+id/button2" 
    android:layout_alignBottom="@+id/button2" 
    android:layout_toRightOf="@+id/button2" 
    android:text="3" 
    /> 

<Button 
    android:id="@+id/button4" 
    style="?android:attr/buttonStyleSmall" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_above="@+id/button1" 
    android:layout_alignLeft="@+id/button1" 
    android:text="4" 
    /> 

<Button 
    android:id="@+id/button5" 
    style="?android:attr/buttonStyleSmall" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignBaseline="@+id/button4" 
    android:layout_alignBottom="@+id/button4" 
    android:layout_toLeftOf="@+id/button3" 
    android:text="5" 
    /> 

<Button 
    android:id="@+id/button6" 
    style="?android:attr/buttonStyleSmall" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignBaseline="@+id/button5" 
    android:layout_alignBottom="@+id/button5" 
    android:layout_alignLeft="@+id/button3" 
    android:text="6" 
    /> 

<Button 
    android:id="@+id/button7" 
    style="?android:attr/buttonStyleSmall" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_above="@+id/button4" 
    android:layout_alignLeft="@+id/button4" 
    android:text="7" 
    /> 

<Button 
    android:id="@+id/button8" 
    style="?android:attr/buttonStyleSmall" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_above="@+id/button5" 
    android:layout_alignLeft="@+id/button5" 
    android:text="8" 
    /> 

<Button 
    android:id="@+id/button9" 
    style="?android:attr/buttonStyleSmall" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_above="@+id/button6" 
    android:layout_alignLeft="@+id/button6" 
    android:text="9" 
    /> 

<Button 
    android:id="@+id/button10" 
    style="?android:attr/buttonStyleSmall" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignTop="@+id/button9" 
    android:layout_toRightOf="@+id/button6" 
    android:text="Button" /> 

<Button 
    android:id="@+id/button11" 
    style="?android:attr/buttonStyleSmall" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignRight="@+id/button10" 
    android:layout_alignTop="@+id/button6" 
    android:text="Button" /> 

<Button 
    android:id="@+id/button12" 
    style="?android:attr/buttonStyleSmall" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignLeft="@+id/button11" 
    android:layout_below="@+id/button11" 
    android:text="Button" /> 

<Button 
    android:id="@+id/button13" 
    style="?android:attr/buttonStyleSmall" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignLeft="@+id/button12" 
    android:layout_alignParentBottom="true" 
    android:layout_alignRight="@+id/button12" 
    android:text="+" /> 

<Button 
    android:id="@+id/button1" 
    style="?android:attr/buttonStyleSmall" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_above="@+id/button13" 
    android:layout_alignLeft="@+id/lay" 
    android:text="1" /> 

<Button 
    android:id="@+id/button14" 
    style="?android:attr/buttonStyleSmall" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignBaseline="@+id/button13" 
    android:layout_alignBottom="@+id/button13" 
    android:layout_alignLeft="@+id/button1" 
    android:layout_alignRight="@+id/button2" 
    android:text="0" /> 

<Button 
    android:id="@+id/button15" 
    style="?android:attr/buttonStyleSmall" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignLeft="@+id/button3" 
    android:layout_alignRight="@+id/button3" 
    android:layout_alignTop="@+id/button13" 
    android:text="dot" /> 

<Button 
    android:id="@+id/button16" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignBaseline="@+id/button13" 
    android:layout_alignBottom="@+id/button13" 
    android:layout_alignRight="@+id/lay" 
    android:layout_toRightOf="@+id/button12" 
    android:text="=" /> 

<Button 
    android:id="@+id/button17" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignLeft="@+id/button16" 
    android:layout_alignRight="@+id/lay" 
    android:layout_alignTop="@+id/button10" 
    android:text="CLR" /> 

</RelativeLayout> 

請幫助我,我已經搜索了很多,但沒有找到任何解決我的應用簡化版,開始在所有不幸的是它停止。在此先感謝

+0

請首先看看logcat的錯誤輸出,如果可能的話在這裏發佈。 – Neoh 2013-05-06 12:02:55

+0

發佈一些日誌.. – 2013-05-06 12:08:51

+0

我是Android開發新手告訴我如何發佈日誌?請! – 2013-05-06 12:11:38

回答

1

我在一個快速測試項目中測試了您的代碼(XML以及Java)。它崩潰了。顯然,佈局不喜歡在其中設置android:background屬性。

刪除從父這條線的RelativeLayout將修復它:

android:background="@style/AppBaseTheme" 

測試設備上:

enter image description here

的最後家長RelativeLayout看起來這本:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:id="@+id/rel" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    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=".MainActivity" > 

    .... 

    .... 

</RelativeLayout> 

至於爲什麼它不喜歡噸帽子屬性是因爲它映射到名爲AppBaseThemestyles.xml中的樣式。如果您已經創建使用Android應用程序項目嚮導中的項目,像我一樣,我已經注意到它創建了一個空白 styles.xml只有這樣它:

<resources> 

    <!-- 
     Base application theme, dependent on API level. This theme is replaced 
     by AppBaseTheme from res/values-vXX/styles.xml on newer devices. 
    --> 
    <style name="AppBaseTheme" parent="android:Theme.Light"> 
     <!-- 
      Theme customizations available in newer API levels can go in 
      res/values-vXX/styles.xml, while customizations related to 
      backward-compatibility can go here. 
     --> 
    </style> 

    <!-- Application theme. --> 
    <style name="AppTheme" parent="AppBaseTheme"> 
     <!-- All customizations that are NOT specific to a particular API-level can go here. --> 
    </style> 

</resources> 

當然,屬性android:background="@style/AppBaseTheme"做沒有必要爲RelativeLayout提供與android:background屬性兼容的資源。

+1

所以我必須從我的.xml文件中刪除這段代碼:「android:background =」@ style/AppBaseTheme「@ – 2013-05-06 12:26:04

+0

@JunaidHassan:Correct。從代碼中顯示的父親'RelativeLayout'(_I忘記刪除它從錯誤的答案中看出來)看看它現在是怎麼樣的 – 2013-05-06 12:27:38

+1

lols lemme告訴你一個更多的問題這個Eclipse IDE吸收了很多我敢打賭確信NetBeans很好地爲開發人員提供用戶友好的行爲現在我的Eclipse停止工作以及模擬器甚至連主屏都沒有顯示它掛了很長時間 – 2013-05-06 12:40:31

相關問題