2013-03-24 190 views
0

我正在嘗試使用Android「按鈕」按鈕構建一個簡單的應用程序。在MainActivty.java文件中,出現以下代碼錯誤,因此我需要在此糾正哪些問題?構建Android應用程序

package com.example.simplemusicplayer; 

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

public class MainActivity extends Activity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
} 


@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; 
} 
} 

Button playButton=(Button) findViewById(R.id.button1); 
playButton.setOnClickListener(new OnClickListener(){ 
@Override 
public void onClick(View v){ 
    //TODO Auto generated method stub 
    Toast.makeText(MainActivity.this,"Starting to play",Toast.LENGTH_SHORT).show();  
} 
}); 
} 
} 

回答

1

移動

Button playButton=(Button) findViewById(R.id.button1); 
playButton.setOnClickListener(new OnClickListener(){ 
@Override 
public void onClick(View v){ 
    //TODO Auto generated method stub 
    Toast.makeText(MainActivity.this,"Starting to play",Toast.LENGTH_SHORT).show();  
} 
}); 

onCreate()

並從onCreateOptionsMenu的末尾刪除多餘的}

我還建議您閱讀Building Your First Android App,這是一本很好的指導,可以幫助您瞭解基本知識。

+0

能否請您解釋如何做到這一點的代碼工作的?而且它的onCreate()有3個在那裏。 – 2013-03-24 04:40:56

+3

'findViewById()'是一個'非靜態'方法,所以它只能從'非靜態'方法調用。在這種情況下,'onCreate'就是這樣一種方法。大部分代碼應該位於其他方法中。我**高度**建議您閱讀初學者的Android教程或Java教程以獲得更好的理解。 – Tushar 2013-03-24 04:44:57

+0

非常感謝.. – 2013-03-24 04:55:12

0

試試這個代碼

package com.example.simplemusicplayer; 

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

public class MainActivity extends Activity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     Button playButton = (Button) findViewById(R.id.button1); 
     playButton.setOnClickListener(new OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       // TODO Auto generated method stub 
       Toast.makeText(MainActivity.this, "Starting to play", 
         Toast.LENGTH_SHORT).show(); 
      } 
     }); 
    } 

    @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; 
    } 
} 
+0

這一個修正了錯誤,謝謝 – 2013-03-24 04:57:43